1. ホーム
  2. ios

[解決済み] フレームワークを使用したiOSアプリがデバイス上でクラッシュ、dyld: ライブラリがロードされない、Xcode 6 Beta

2022-03-16 13:23:25

質問

このクラッシュはブロック化された問題で、私は以下の手順でこの問題を再現しました。

  • Cocoa Touch Framework プロジェクトを作成します。
  • swift ファイルとクラスを追加します。
  • デバイス用フレームワークの構築
  • SwiftでSingle Viewアプリケーションを作成する
  • フレームワークをアプリのプロジェクトにインポートする
  • ViewControllerにフレームワークからswiftクラスをインスタンス化する。
  • デバイス上でアプリをビルドして実行する

アプリを起動するとすぐにクラッシュしました。コンソールログは以下の通りです。

dyld: Library not loaded: @rpath/FrameworkTest03.framework/FrameworkTest03
  Referenced from: /var/mobile/Applications/FA6BAAC8-1AAD-49B4-8326-F30F66458CB6/FrameworkTest03App.app/FrameworkTest03App
  Reason: image not found

iOS 7.1 と 8.0 のデバイスでビルドを試しましたが、どちらも同じクラッシュが発生しました。しかし、シミュレーター上では問題なくアプリをビルドして実行することができます。また、フレームワークを変更して 必須 から オプション バイナリとライブラリのリンク のインスタンスを作成すると、アプリがクラッシュしました。 . デバイスとシミュレータで挙動が異なるので、Xcodeのベータ版を使ってデバイス用のフレームワークを配布できないのではないかと思っています。どなたか教えていただけませんか?

解決方法を教えてください。

ターゲットの 一般的な タブに 組み込み用バイナリ のフィールドがあります。そこにフレームワークを追加すると、クラッシュが解決されます。

リファレンスは こちら をApple Developer Forumsに掲載しました。