NDK开发错误 use of invalid jobject 0x7fb147b460

JNI中直接返回C/C++的字符串时会报如下错误

 JNI DETECTED ERROR IN APPLICATION: use of invalid jobject 0x7fb147b460
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]     from java.lang.String com.example.testndkeclipse.JniClient.AddStr(java.lang.String, java.lang.String)
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399] "main" prio=5 tid=1 Runnable
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   | group="main" sCount=0 dsCount=0 obj=0x764a95c0 self=0x7fb247c400
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   | sysTid=21402 nice=0 cgrp=default sched=0/0 handle=0x7fb62e92c0
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   | state=R schedstat=( 144816922 6913689 138 ) utm=8 stm=6 core=4 HZ=100
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   | stack=0x7fea3da000-0x7fea3dc000 stackSize=8MB
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   | held mutexes= "mutator lock"(shared held)
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   at com.example.testndkeclipse.JniClient.AddStr(Native method)
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   at com.example.testndkeclipse.MainActivity.onClick(MainActivity.java:71)
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   at android.view.View.performClick(View.java:5317)
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   at android.view.View$PerformClick.run(View.java:21648)
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   at android.os.Handler.handleCallback(Handler.java:815)
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   at android.os.Handler.dispatchMessage(Handler.java:104)
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   at android.os.Looper.loop(Looper.java:207)
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   at android.app.ActivityThread.main(ActivityThread.java:5915)
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   at java.lang.reflect.Method.invoke!(Native method)
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:955)
07-12 11:35:02.133: A/aoc(21402): aliyunos/aoc/vm/jni/java_vm_ext.cc:399]   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:816)

Paste_Image.png

需要将C/C++中的字符串转换为中间层jstring返回

jstring result = (*env)->NewStringUTF(env,n_str_point);
return result;//需要转换为中间层jstring返回

NdkDemo代码已上传至Github

如有不正支出,欢迎留言交流!
我的GitHub
我的CSDN
我的简书
开发笔记

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员学园

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值