2016-10-05 37 views
0

我在JniLibs代碼中出現了錯誤的android ndk。我得到錯誤:模擬器7.0中的應用程序崩潰:應用程序中的JNI檢測錯誤:GetStringUTFChars收到NULL jstring

JNI DETECTED ERROR IN APPLICATION: GetStringUTFChars received NULL jstring

以下是詳細錯誤。我無法發佈全部內容,因爲它太長了。

10-05 17:12:01.100 3773-3773/com.example.myapp A/art: art/runtime/java_vm_ext.cc:470] JNI DETECTED ERROR IN APPLICATION: GetStringUTFChars received NULL jstring 
10-05 17:12:01.100 3773-3773/com.example.myapp A/art: art/runtime/java_vm_ext.cc:470]  in call to GetStringUTFChars 
10-05 17:12:01.101 3773-3773/com.example.myapp A/art: art/runtime/java_vm_ext.cc:470]  from java.lang.String com.example.myapp.othercode.PassCodeUtil.genPassCode(android.content.Context) 
10-05 17:12:01.101 3773-3773/com.example.myapp A/art: art/runtime/java_vm_ext.cc:470] "main" prio=5 tid=1 Runnable 
10-05 17:12:01.101 3773-3773/com.example.myapp A/art: art/runtime/java_vm_ext.cc:470] | group="main" sCount=0 dsCount=0 obj=0x75518a50 self=0x7ffef3695a00 
10-05 17:12:01.101 3773-3773/com.example.myapp A/art: art/runtime/java_vm_ext.cc:470] | sysTid=3773 nice=0 cgrp=default sched=0/0 handle=0x7ffef7ff9b40 
10-05 17:12:01.101 3773-3773/com.example.myapp A/art: art/runtime/java_vm_ext.cc:470] | state=R schedstat=(0 0 0) utm=3 stm=2 core=0 HZ=100 
10-05 17:12:01.101 3773-3773/com.example.myapp A/art: art/runtime/java_vm_ext.cc:470] | stack=0x7fffa7798000-0x7fffa779a000 stackSize=8MB 
10-05 17:12:01.101 3773-3773/com.example.myapp A/art: art/runtime/java_vm_ext.cc:470] | held mutexes= "mutator lock"(shared held) 
. 
. 
. 

JniLibs在模擬器下工作良好,並在模擬器版本7.0中顯示錯誤。我從最近的應用程序中刪除應用程序並再次打開應用程序時發生錯誤。是因爲模擬器還是我做錯了什麼?我用android ndk很新。

謝謝任何​​幫助。

+1

哪裏出現此錯誤時你應該張貼的代碼。 – Michael

+0

@Michael,謝謝。我現在發現了問題並解決了它。我已經回答了我自己的帖子。 –

回答

1

最後,我知道問題的原因。我得到了GetStringUTFChars的參數錯誤,而且我是空的。這GetStringUTFChars的語法是:

const char * GetStringUTFChars(JNIEnv *env, jstring string, jboolean *isCopy);

和我坐上放慢參數空,所以解決方法是在使用前要檢查空此功能。例如:

if (mystring == NULL){ 
    return NULL; 
} 
// function GetStringUTFChars 

參考文獻:https://stackoverflow.com/a/15268628/5241603

相關問題