私はJNIでAndroid APPプロジェクトに取り組んでいます。私はプロジェクトのいくつかのソースを持っていますが、私は.soファイルとソースの.javaファイルしか持っていません。どのように私はC + +のソースファイルなしでJNI関数を使用できますか?C++ソースファイルなしのJNI
2
A
答えて
2
あなたはこの.soのをインタフェースするJavaクラスを使用している場合、あなたはそれを使用するC++のソースを必要としません。ネイティブメソッドを必要に応じて使用するかネイティブメソッドを使用しやすくするJavaラッパーメソッドを追加すると、からパブリックにネイティブメソッドを変更することもできます。
Androidとは、.soファイルがプラットフォームと一致することを確認してください(たとえば、ARMデバイスではx86ライブラリを使用できません)。 .soは互換性のあるツールチェーンでコンパイルされている必要があります(Linuxコンパイラは使用できませんなど)。 .soが特定のプラットフォーム用にビルドされていると、古いデバイスにロードできないことがあります。NDKプラットフォームは、前方に互換性があり、後方には互換性がありません。
関連する問題
- 1. 既存のCソースファイルへのアクセスJava JNIを使用して
- 2. C++ビジュアルスタジオコミュニティのソースファイル
- 3. JNIとC++のオブジェクトインスタンス
- 4. JNI C++のクラスUnsatisfieldLinkError
- 5. Microsoft Cコンパイラ.ECと.Cソースファイル
- 6. JNI CとC++で異なる呼び出しですか?
- 7. フォーマットのObjective Cのソースファイル
- 8. C++プログラムのメモリリークJNI環境
- 9. JNI/C++コンパイルの問題
- 10. IDLとC++ソースファイルの関係
- 11. JNI呼び出しAPI - NoClassDefFoundError(C/Java)
- 12. Android - JNIクラッシュオンセットネイティブC++変数
- 13. CソースファイルをCILとしてマージする
- 14. コマンドプロンプトを使用してCソースファイルをコンパイル
- 15. Distutils:Objective-C++ソースファイルをC++エクステンションの一部としてコンパイル
- 16. 編集後のソースファイルの更新 - C#
- 17. C++の慣習 - クラスのソースファイルとヘッダーファイル
- 18. JNI/Cライブラリのデバッグ方法は?
- 19. 既存のC++関数をJNIにマップ
- 20. JavaからC++へのJNI変換
- 21. Java JNI UnsatisfiedLinkErrorポインタへのC charポインタ
- 22. JNI C++ Androidアプリのクラッシュコール機能
- 23. C++クラスクラッシュからJavaへのJNIコールバック
- 24. Google-NDK/JNIインタラクションのないコマンドラインCアプリケーションのコンパイル
- 25. C++ソースファイル内のリンクオプションを定義する
- 26. C言語:前処理後のソースファイル
- 27. C++ソースファイルの印刷不可(0xFF)バイト
- 28. すべてのCソースファイル/インクリメンタルビルドでコンパイラを再呼び出ししないsetup.py
- 29. 異なるソースファイル間の外部列挙 - C
- 30. アンドロイドJNI java.lang.NoSuchMethodErrorの:なし非静的メソッド
ありがとうございました! しかし、アンドロイドスタジオは私にJNI機能を実装する必要があります。 私は何をすべきですか? –
この検査を無効にするには、[環境設定]> [インスペクション]> [Android]> [Missing JNI function]をオフにします。しかし、ネイティブlibが正しく準備されていることを確認する必要があります。 –
"ネイティブlibが正しく準備されていることを確認する必要があります。 これは私の主な問題だと思う –