csh_34 2013-05-09 09:42 采纳率: 0%
浏览 5809
已采纳

jni如何传递一个字符串数组?

如何传递一个字符串数组?
xx.cpp

JNIEXPORT jstring JNICALL Hello_Native(JNIEnv *env, jobject obj,jstring string)
{
    const char *str = env->GetStringUTFChars(string, 0);
    return env->NewStringUTF( "Hello from JNI !");
}
static JNINativeMethod gMethods[] = {
   {"JniHello",const_cast<char*>("(Ljava/lang/jsting)Ljava/lang/jsting;"),(void*)Hello_Native}

xx.java

public native static String JniHello(String text);

为什么系统总是提醒当在 gMethods 中申明 JniHello 时,参数不正确。

  • 写回答

1条回答

  • balmy 2013-05-09 13:17
    关注

    字符串数组是这么表示吧 jobjectArray,可看你的代码明明是string
    在源码里找了一个,难道是少了个分号?

     private static native String native_get(String key);
    static JNINativeMethod method_table[] = {  
    { "native_get", "(Ljava/lang/String;)Ljava/lang/String;",
         (void*) SystemProperties_getS },
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站