私は C++ を使用して Android でコーディングしています (具体的には cocos2d-x を使用しています)。
さて、たとえば、MyClass
.h ファイルと .cpp ファイルを持つクラスがあるとします。これらのファイルから .so を作成したいと思います。次に、その .so をプロジェクトに含めて、.so 経由でアクセスしたいと思います#include "MyClass.h"
。出来ますか?もしそうなら、どのように?ありがとう!
私は C++ を使用して Android でコーディングしています (具体的には cocos2d-x を使用しています)。
さて、たとえば、MyClass
.h ファイルと .cpp ファイルを持つクラスがあるとします。これらのファイルから .so を作成したいと思います。次に、その .so をプロジェクトに含めて、.so 経由でアクセスしたいと思います#include "MyClass.h"
。出来ますか?もしそうなら、どのように?ありがとう!
ARM 用のスタティック ライブラリをビルドするには、 NDK スタンドアロン ツールチェーンを使用できます。
をコンパイルしたら、次のようなAndroid NDK make ファイル(Android.mk) を.so
使用してプロジェクトにライブラリを含めることができます。
LOCAL_PATH := $(call my-dir)
LOCAL_SRC_FILES := my_module.so
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
include $(PREBUILT_SHARED_LIBRARY)
正しいパスにヘッダー (/include) が含まれていることを確認してください。
あなたの意図がコードで Android の世界に戻ることであるかどうかはわかりませんが、.so/C/C++ コードと Java の間のブリッジを作成することを検討している場合は、適切な JNI メソッドをC. JNI メソッドにマップされた静的System.loadLibrary('my_module')
インポートとnative
メソッド宣言を使用して、必要な Java クラスを構築します。