我正在为JNI使用一些示例代码。
我有一个Java类,
public String getArtists(Context context)
...
但是,这个编码如下的c ++接口只返回一个空指针
s_getArtistsGetArtistsMethodID = env->GetMethodID(s_getArtistsClassID, "getArtists", "(Landroid/content/Context;)V");
我在这里缺少什么?下面的代码按预期工作,所以我假设它与context参数有关。
s_getArtistsConstructorMethodID = env->GetMethodID(s_getArtistsClassID, "<init>", "()V");
非常感谢您的帮助!
答案 0 :(得分:6)
返回值错误。 V无效,你返回一个字符串。尝试:
env->GetMethodID(s_getArtistsClassID, "getArtists", "(Landroid/content/Context;)Ljava/lang/String;"