1
今すぐ.soファイルとC++ヘッダーファイルがあります。 次のように機能があります:ネイティブメソッドを作成するにはどうすればよいですか?
public class Decoder {
static {
System.loadLibrary("SingleDecode");
}
public native boolean HK_STD_CreateHandle(
byte[] pFileHdrBuffer,
int dwFileHdrSize,
int dwBufferSize,
int hHandle);
}
しかし、私はネイティブ関数を記述するのか分からない:
BOOL __stdcall HK_STD_CreateHandle(IN PBYTE pFileHdrBuffer, IN DWORD dwFileHdrSize, IN DWORD dwBufferSize, OUT HANDLE& hHandle);
typedef BYTE * PBYTE;
typedef unsigned long DWORD;
typedef void * HANDLE;
私は.soのファイルを使用するJavaクラスを実装することができると思います。誰か助けてくれますか?
あなたのJNIファイルから.soファイルを取得しました –
アンドロイドをコンパイルしましたか?NDK –
ありがとうございます。サードパーティの.soファイルを使用したいと思います。 Javaでネイティブメソッドを宣言するだけで直接使用できると思っていましたが、サードパーティの.soファイルを使用するには、新しい.soファイルをndkで実装する必要があります。 –