0
내 MainActivity.java를 유효하지 jfieldID는 MainActivity.java에서 native_setup
으로 전화하면 아래 오류가 표시됩니다.는 개체에 대한
04-20 02:07:02.505 26064 26064 I TestJni+++++++: native init over!
04-20 02:07:02.522 26064 26064 W art : Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
04-20 02:07:02.576 26064 26064 I TestJni+++++++: native setup!lpMainA=0x790e761e70,status=100
04-20 02:07:02.588 26064 26064 F art : art/runtime/java_vm_ext.cc:470] JNI DETECTED ERROR IN APPLICATION: jfieldID long com.example.android.testjni.MainActivity.mNativeMainA not valid for an object of class java.lang.Class<com.example.android.testjni.MainActivity>
04-20 02:07:02.588 26064 26064 F art : art/runtime/java_vm_ext.cc:470] in call to SetLongField
04-20 02:07:02.588 26064 26064 F art : art/runtime/java_vm_ext.cc:470] from void com.example.android.testjni.MainActivity.native_setup()
.....
하지만 com_example_native_add
에서 com_example_native_setup
를 호출 할 경우, 모든 것이 잘 될 것입니다. 나는 정말로 혼란 스럽다.
도움이 될 것입니다!