これはフォローアップの質問です: Android NDK : Compiling different libraries for different architectures
私の問題は、NDK でコンパイルされた 2 つの c++ JNI ライブラリがあることです。1 つは小規模でアーキテクチャに依存するもので、もう 1 つはアーキテクチャ間で同じ大きなライブラリです。.apk を小さくするために、大きなライブラリのコピーを 1 つだけにします。次のようなフォルダー構造を試しました。
lib/armeabi/libbig.so
lib/armeabi/libsmall.so
lib/armeabi-v7a/libsmall.so
ただし、v7 デバイスで実行すると、UnsatisfiedLinkError が発生しました。デバイスの libs フォルダーを確認したところ、libsmall.so のみがインストールされていました。私の質問は、一部のライブラリをアーキテクチャに依存せず、他のライブラリをアーキテクチャに依存させることは可能ですか? このようなもの:
lib/armeabi/libsmall.so
lib/armeabi-v7a/libsmall.so
lib/all/libbig.so