同じパッケージに 2 つのアクティビティがあります (メインのアクティビティと別のアクティビティ)。他のアクティビティを で開始する必要がある場合がありstartActivityForResult
ます。2 つの質問があります。
- 2 つのアクティビティは同じスレッドに属していますか?
- メイン アクティビティでネイティブ ライブラリをロードした場合、他のアクティビティからネイティブ メソッドにアクセスできますか?
質問 2 について、 というネイティブ メソッドがあるとしNativeMethod1()
ます。主な活動では、いつものように、次の宣言があります。
public native void NativeMethod1();
ネイティブコードでは、関数を適切に宣言します(Java_com_mypackage_myapp_などを使用して..)。他のアクティビティにも同様の宣言を追加し、ネイティブ ライブラリに対応するメソッド宣言も追加しました。すべてが正常に機能していますが、常に正しいとは限らないことを想定しているのではないかと心配しています。これにより、予期しないクラッシュが発生します。