0

AsyncTask があり、そこからネイティブ (jni) メソッドを呼び出そうとしています。出来ますか?満たされていないリンク エラーを示す実行時例外が発生します。

4

1 に答える 1

1

はい、AsyncTask に使用されるスレッドを含め、任意のスレッドから JNI メソッドを呼び出すことができます。問題は次のいずれかである可能性があります。

  1. ネイティブ ライブラリが時間内に読み込まれないこと。複数のスレッドを使用している場合、ここで競合状態が発生している可能性がありますか? ライブラリをメイン スレッドにロードして、バックグラウンド スレッドで JNI 呼び出しと競合していませんか?
  2. Java 側のネイティブ メソッド スタブとネイティブ側のメソッド実装の間で署名の不一致があること。
于 2013-02-22T11:19:20.720 に答える