サードパーティの .so ライブラリを自分のアプリと共にカスタム Android システムに構築しようとして、ここで 1 週間立ち往生していました。http://www.maxters.net/2012/05/adding-prebuilt-shared-library-to-android-build-system/に従い、ビルド済みの共有ライブラリとして .so lib を Android Build System に正常に追加しました。これで、.so lib が ../out/target/product/crespo4g/obj/lib/ に表示されます。
ただし、このディレクトリ内のライブラリは、フラッシュ時にデバイスに移行されません。また、私の .so lib も /data/data/my_app_name/lib に表示されません。そのため、 System.loadLibrary()を実行するとUnsatisfiedLinkErrorが発生します。
これを解決するには3つの方法があると思いましたが、実装方法がわかりません:
- 私のアプリは、私の.soが私のアプリ全体と一緒であることをコンパイラーに示すことができなかったので、.so libは私のアプリでシステムイメージにコンパイルされません. しかし、「LOCAL_STATIC_LIBRARIES := libXX」で宣言しましたが、何か問題がありますか?
- .so lib を /system/lib/ にビルドする方法はありますか? /system/lib/ の下にある so libs はどこから派生したものですか?
私はAndroidの構築に慣れていないので、助けてください..
ありがとう!