新手,请大神帮忙解决一个jni调用问题.
我刚学android开发. 原来是做c.c++的.现在项目想用jni来调用c原来的代码.
我碰到的问题是.
我在java里面写了如下的代码.
public class Protocol_type {
public class Proctocol_Type_Base {
public int fromType;
public int operationId;
}
public class Protocol_MsgNormal extends Proctocol_Type_Base {
int normalMsgType;
String fromAddr;
String content;
}
}
jni里面写的是
public class readData {
static {
System.loadLibrary("readjni");
}
public native Proctocol_Type_Base Protocol_parseFromString(String telNo, String contentBuf);
}
在cpp里面是这样调用的.
static JNINativeMethod const gMethods[] =
{
{ "Protocol_parseFromString"," (Ljava/lang/String;Ljava/lang/String;)Lcom/example/data/Protocol_type/Proctocol_Type_Base;",(void*) java_Proctocol_from_CCP }
};
编译没有问题.
但是一运行.平台会打印出,找不到本地方法.
请大家帮你看看.
其实我想的就是返回一个内部类.但是不知道为什么老是说找不到本地方法,