JNI 経由でネイティブ C 呼び出しを Java に公開する .so ファイルを作成しました。これはうまく機能し、C コードでシステム ライブラリを使用するだけで、アプリを Android システムにデプロイできます。ただし、他の .so ファイル内の関数を呼び出したい場合、プロジェクトを正しくリンクできません。
たとえば、「libMyJNILibrary.so」を生成するために使用している「MyJNILibrary.c」コードから呼び出すことができる C で定義された API を含む「libotherso.so」ファイルがあるとします。
Android.mk ファイルを次のように変更しようとしました。
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := MyJNILibrary
LOCAL_SRC_FILES := MyJNILibrary.c
LOCAL_LDLIBS += -lotherso
include $(BUILD_SHARED_LIBRARY)
しかし、これで ndk-build を呼び出すと、-lotherso を見つけるエラーが発生します。「libotherso.so」ファイルをどこに置いて、ndk-build が取得できるようにしますか?
ご協力いただきありがとうございます。