dlopen()
機能(Swift iOSアプリ内)でカスタム.dylibライブラリを読み込もうとしています。ライブラリへのパスが必要です。Swiftアプリケーションにカスタム.dylibを置く場所は?
- ここで、ライブラリをプロジェクト構造に配置しますか?
- iOSデバイスのライブラリのパスはどのようになりますか?
また、ライブラリのソースを直接プロジェクトに組み込んでXcodeにビルドさせるのが通常のようです。それは何らかの理由で好ましいアプローチですか?
dlopen()
機能(Swift iOSアプリ内)でカスタム.dylibライブラリを読み込もうとしています。ライブラリへのパスが必要です。Swiftアプリケーションにカスタム.dylibを置く場所は?
また、ライブラリのソースを直接プロジェクトに組み込んでXcodeにビルドさせるのが通常のようです。それは何らかの理由で好ましいアプローチですか?
1)
あなたのプロジェクト内のファイルおよびリソースのリストでは.dylibライブラリが含まれている場合、あなたはあなたの船積みのアプリにdylibをコピーするビルドフェーズ「Copy Files
」を使用することができます。
チュートリアルcan be seen here。
2)
dlopen
について、あなたは「@executable_path
」または「@rpath
」実行時の変数を含む相対パスを使用しようとする前に、ちょうど.dylib
名を使用してみてください。例はhere in this related questionです。
プロジェクトにライブラリソースコードを含めることを好む理由については、「ファイルのコピー」ビルドフェーズに満足していない人や、dlopen
を使用している人の好みにすぎないと思います。