私は共有オブジェクトを持っています。これはNDFに対してコンパイルされた 'libFoo.so'と呼ばれます。私は、Javaのプロジェクトは、私はjarファイルとしてエクスポートし、アンドロイドのアプリケーションで使用することをJARのネイティブ共有オブジェクトをアンドロイドアプリケーションからロードするにはどうすればいいですか?
System.loadLibrary("Foo");
を呼び出すことで、その共有オブジェクトを使用するJavaプロジェクトを(私は「jarlib」それを呼ぶことにします)、持っています。共有オブジェクトに関するすべてのビットをコメントアウトすると、jarファイルは正常に動作し、完全に対話できます。
jarlibを、Unityアンドロイドアプリケーションの共有オブジェクトとともに、./lib/armeabi/libFoo.soの共有オブジェクトとともに使用することができます。これはすべてpeachyまでロードされます。
私はunityのAndroidアプリケーションでjarlibとlibFoo.soを使用しようとしていますが、loadLibraryは絶対にlibFoo.soの検索を拒否します。私は./libと./lib/armeabiのapkに含まれるように配置しようとしましたが、何もロード・コールを見ないように見えます。
私は./libまたはjarlibの./lib/armeabiにlibFoo.so含めて試してみたが、私は私のAndroidアプリを実行する/ビルドしようとしたら、私は聞いています:
The library 'jarlib.jar' contains native libraries that will not run on the device.
The following libraries were found:
- libFoo.so
これで
、それは(./lib/armeabiない)./libに
Additionally some of those libraries will interfer with the installation of the application because of their location in lib/
lib/ is reserved for NDK libraries.
だ場合はちょうど私が私が欠けているものを組み合わせわからないんだけど、私はそれを行うことができると確信している、Iどのようにそれを行う方法を把握することができない!