jni não suporta tipos como void *, unsigned int *,… O que fazer?

Eu tenho.assi (biblioteca compartilhada) escrita em C ++, vamos chamá-la funcionalidade.so na qual eu implemento funções diferentes, aqui está uma lista de algumas funções:

1. unsigned long Initialize(void* userData);
2. unsigned long Uninitialize(void);
3. unsigned long DeviceOpen( unsigned long id, unsigned long* device);
4. unsigned long DeviceClose( unsigned long device );

e assim por diante ..

Eu quero usar esta biblioteca funcionalidade.so) funcionalidade no meu aplicativo java para android. Para isso, crio a pasta jni na minha pasta de projeto de aplicativo Android e coloco os arquivos:

Android.mk

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE           := Test_library
LOCAL_SRC_FILES        := Test_library.c
## Linking functionality library
LOCAL_LDLIBS := -lfunctionality
include $(BUILD_SHARED_LIBRARY)

Test_library.c

#include <string.h>
#include <jni.h>
#include "Test_library.h"

jint Java_com_Dsm_Test_DsmLibraryTest_vtUninitialize(JNIEnv* env, jobject thiz) {
return Uninitialize( );
}

jint Java_com_Dsm_Test_DsmLibraryTest_vtDeviceClose(JNIEnv* env, jobject thiz, jint hDevice) {
return DeviceClose( hDevice );
}

Test_library.h

Um arquivo de cabeçalho em queInicializa, Desinicializar, DeviceOpen, DeviceCloseunções são declarada

Após isso, eu corro ndk-build e crie uma biblioteca Test_library.so e carregue-a no meu aplicativo java e use-as assim:

// Some code

public native int Uninitialize( );

public native int DeviceClose( int hDevice );

static {
    System.loadLibrary("Test_library");
}

Tudo funciona bem. Depois quero adicionar outras duas funções

1. unsigned long Initialize(void* userData);
2. unsigned long DeviceOpen( unsigned long id, unsigned long* device);

`

Now Questions: Como posso escrever essas duas funções como nativo em java? Como não hávazio ouinsigned long * tipos em javaComo eu posso escrever as mesmas funções no Test_library.c e no jni.h não hávazi ** ouinsigned long * types

brigado pela ajud

questionAnswers(4)

yourAnswerToTheQuestion