2014年11月28日

Swift で作ったアプリがiPhone の実機上でクラッシュする場合の回避法

Swift で作ったアプリを iPhone の実機で動かそうとすると起動画面を表示したあと、以下の様なログをはいて止まってしまっていましたが、回避方法をヤフー知恵袋
Swift で作ったアプリを iPhone の実機で動かそうとするとクラッシュする。
で質問し、教えていただきましたのでまとめておきます。

エラーログ
dyld: Library not loaded: @rpath/libswiftCore.dylib
Referenced from: /private/var/mobile/Containers/Bundle/Application/055A2BD3-0676-41B8-BC81-D092668E4CD0/TestSwift.app/TestSwift
Reason: no suitable image found. Did find:
/private/var/mobile/Containers/Bundle/Application/055A2BD3-0676-41B8-BC81-D092668E4CD0/TestSwift.app/Frameworks/libswiftCore.dylib: mmap() error 1 at address=0x100140000, size=0x0018C000 segment=__TEXT in Segment::map() mapping /private/var/mobile/Containers/Bundle/Application/055A2BD3-0676-41B8-BC81-D092668E4CD0/TestSwift.app/Frameworks/libswiftCore.dylib
(lldb)

開発、実行環境
MacBook Pro 13-inch, Mid 2010
OS X 10.9.5
Xcode Version 6.1
iPhone 6 Plus iOS 8.1.1

この場合、証明書を Xcode を使わずに Apple の Developer ページの Member Center から手作業で作った Provisioning Profile を使用すると回避することができました。

自分が行った手順と参考にしたページ
  1. 念のため、Xcode で作った Provisioning Profile などを以下のように全部削除(いろいろ試していたので一旦きれいにしておきたかったので・・・・)
    • iPhone にインストールしてあったテストアプリを削除
    • Xcode [Window] -> [Device] を使って実機から provisioning profile を削除
    • Member Center で provisioning profile を削除
    • Member Center で iOS Certificates (Development) を revoke
    • Member Center で iOS Certificates (Production) を revoke
    • Member Center で App ID を削除
    • キーチェーンアクセスから以前インストールしてた証明書類を削除
  2. 以下のリンク先を参考にして、Provisioning profile を Apple の Developer ページの Member Center で作成。
    iOS プロビジョニングプロファイルの作成
  3. Xcode [Window] -> [Device] を使って、ダウンロードしてあった Provisioning profile を iPhone に設定する。
  4. Xcode のツールバーにある Scheme から、接続した iPhone を選択して Run ボタンを押して実行。

この手順を踏むことで無事実機でアプリを起動できるようになりました。
参考になれば幸いです。

posted by とさかくん at 16:36| Comment(0) | 日記
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: