おはよう。私はライブラリを持っています.soはx86 Androidでうまくいきます。 Javaでこのライブラリを使用するには?JavaコードでAndroid .soを使用
System.getProperty("sun.arch.data.model").equals("32");
true
static
{
System.loadLibrary("full/path/to/library/liblibrary.so");
}
Exception in thread "main" java.lang.UnsatisfiedLinkError: no full/path/to/library/liblibrary.so in java.library.path
多分それは、Android NDKからいくつかのライブラリを使用しますか?
、あなたは '使用することができます'' 'loadLibrary'''の代わりに' 'System.load''を使います。 '' loadLibrary'''に入れた文字列は、プラットフォーム固有のライブラリ名にマップされます。 '' System.mapLibraryName'''を呼び出すことで、その結果を見ることができます。 iirc、Linux上では、 "library"は "liblibrary.so"にマップされます。 –
Thx。 System.load - 仕事。しかし、今では新しいエラー: スレッド "main"の例外java.lang.UnsatisfiedLinkError:library.so:AMD 64ビットプラットフォームでこの.dll(マシンコード= 0x34)を読み込めません。 x86 JVM スレッド "main"の例外java.lang.UnsatisfiedLinkError:library.so:IA 32ビットプラットフォーム上でこの.dll(マシンコード= 0x34)をロードできません – user3504724
私はそれを助けることはできません...ごめんなさい。 –