A/art(30231): art/runtime/check_jni.cc:65] string: 'LevelScore11�
art/runtime/check_jni.cc:65] '
art/runtime/check_jni.cc:65] in call to NewStringUTF
A/art(16684): art/runtime/check_jni.cc:65] from void org.cocos2dx.lib.Cocos2dxRenderer.nativeRender()
A/art(16684): art/runtime/check_jni.cc:65] native: #08 pc 003e93f8 /data/app/com.xxxxxxxxxx/lib/arm/libcocos2dcpp.so (_ZN7_JNIEnv12NewStringUTFEPKc+40)
art/runtime/check_jni.`enter code here`cc:65] native: #09 pc 003efc8c /data/app/xxxxxxxxxxxxx/lib/arm/libcocos2dcpp.so (_Z19setIntegerForKeyJNIPKci+112)
art/runtime/check_jni.cc:65] native: #10 pc 005cd8b8 /data/app/xxxxxxxxxxx/lib/arm/libcocos2dcpp.so (_ZN7cocos2d11UserDefault16setIntegerForKeyEPKci+40)
art/runtime/check_jni.cc:65] native: #11 pc 003d62a8 /data/app/xxxxxxxxxxxx/lib/arm/libcocos2dcpp.so (???)
art/runtime/check_jni.cc:65] native: #12 pc 004553f4 /data/app/xxxxxxxxxxxx/lib/arm/libcocos2dcpp.so (_ZN7cocos2d8CallFunc7executeEv+156)
art/runtime/check_jni.cc:65] native: #13 pc 0045534c /data/app/xxxxxxxxxxxx/lib/arm/libcocos2dcpp.so (_ZN7cocos2d8CallFunc6updateEf+40)
对于许多文件,我在
中调用时出错NewStringUTF函数
APP正在崩溃此功能。
是否有更新的版本?我找到了这么多解决方案,但没有运气。任何人都可以帮助我吗?
提前谢谢。
答案 0 :(得分:1)
从我从错误中看到的内容以及因为您没有对JNI做任何其他事情,当您尝试将整数保存到UserDefaults时,似乎发生了错误:
A/art(16684): art/runtime/check_jni.cc:65] native: #08 pc 003e93f8 /data/app/com.xxxxxxxxxx/lib/arm/libcocos2dcpp.so (_ZN7_JNIEnv12NewStringUTFEPKc+40)
art/runtime/check_jni.`enter code here`cc:65] native: #09 pc 003efc8c /data/app/xxxxxxxxxxxxx/lib/arm/libcocos2dcpp.so (_Z19setIntegerForKeyJNIPKci+112)
art/runtime/check_jni.cc:65] native: #10 pc 005cd8b8 /data/app/xxxxxxxxxxx/lib/arm/libcocos2dcpp.so (_ZN7cocos2d11UserDefault16setIntegerForKeyEPKci+40
因此,如果以某种方式放置字符串而不是int,请检查将UserDefault调用到setIntegerForKey的位置,它应该是:
cocos2d::UserDefault::getInstance()->setIntegerForKey("key", 0);
或者如果您想保存字符串:
cocos2d::UserDefault::getInstance()->setStringForKey("userCards", "value);
<强>更新强>
好的尝试这个并在此处发布结果,以便我们可以准确地看到发生了什么:
cd $ANDROID_NDK
adb logcat | ./ndk-stack -sym $PROJECT_PATH/obj/local/armeabi
其中:
$ ANDROID_NDK 是Android NDK的路径
$ PROJECT_PATH 是你的cocos2d-x android项目的路径