Nie ma cztery różne przypadki, jeden dla urządzenia ukorzenionych, jeden dla emulatora, jeden dla regularnego urządzenia i jeden dla ukorzenione lub regularne urządzenie.
na urządzeniu ukorzenionych udało mi się dostać to działa tak:
po tym urządzenie zostało zrestartowane i podczas rozruchu widzę komunikat dziennika:
Istnieje kilka sposobów umożliwiających CheckJNI.
Jeśli korzystasz z emulatora, funkcja CheckJNI jest domyślnie włączona.
Jeśli masz zakorzenione urządzenie, można użyć następującej sekwencji poleceń, aby ponownie uruchomić moduł wykonawczy z CheckJNI włączona:
adb shell stop
adb shell setprop dalvik.vm.checkjni true
adb shell start
W każdym z tych przypadków, zobaczysz coś takiego w swoim LogCat wyjście gdy środowisko wykonawcze rozpoczyna:
D AndroidRuntime: CheckJNI is ON
Jeśli masz regularne urządzenia, można użyć następującego polecenia:
adb shell setprop debug.checkjni 1
Nie wpłynie to na aplikacje już uruchomione, ale każda uruchomiona od tego momentu aplikacja będzie miała włączony CheckJNI. (Zmień właściwość na inną wartość lub po prostu uruchom ponownie, spowoduje ponowne wyłączenie funkcji CheckJNI.) W tym przypadku, zobaczysz coś takiego w swoim wyjściu logcat następnym razem aplikacja uruchamia:
D Late-enabling CheckJNI
Można również ustawić android: debuggable atrybut manifestu Twojej aplikacji, aby włączyć CheckJNI tylko dla Twojej aplikacji. Zauważ, że narzędzia do budowania Androida zrobią to automatycznie dla pewnych typów kompilacji.
plz wspomnieć, jak kiedykolwiek rozwiązałeś swój problem. To będzie bardzo pomocne ... dzięki – aProgrammer