2009-11-30 4 views
5

Может кто-нибудь скажет мне, если я что-то упустил? Я пытаюсь выполнить следующие команды в оболочке.Android - Как включить CheckJni для разработки NDK?

$ ./adb оболочки остановить $ ./adb оболочки setprop dalvik.vm.checkjni правда $ ./adb оболочки начинают

Но Logcat всегда показывает "CheckJNI выключено", когда я установить APK на device. Есть ли что-то еще в eclipse, которое мне нужно сделать, чтобы включить флаг XCheck: Jni?

Спасибо за любую помощь BD

+0

plz упоминает, как вы когда-либо решали свою проблему .. Это будет большой помощью ... спасибо – aProgrammer

ответ

7

Существует четыре различного случая, один для корневого устройства, один для эмулятора, один для регулярного устройства и один для внедренного или регулярного устройство.


На корневых устройств я был в состоянии заставить его работать так:

В ADB:

adb shell 

В запущен после этой оболочки:

su 
stop 
setprop dalvik.vm.checkjni true 
start 

После этого устройство перезагрузилось, и при загрузке я вижу сообщение журнала:

CheckJNI is ON 



Для других случаев увидеть некоторую теорию от official docs:

Есть несколько способов, чтобы позволить CheckJNI.

Если вы используете эмулятор, CheckJNI включен по умолчанию.

Если у вас есть корневое устройство, вы можете использовать следующую последовательность команд для перезапуска выполнения с CheckJNI включен:

adb shell stop 
adb shell setprop dalvik.vm.checkjni true 
adb shell start 

В любом из этих случаев, вы увидите что-то подобное в вашей LogCat выводится при запуске выполнения:

D AndroidRuntime: CheckJNI is ON 

Если у вас есть регулярные устройства, вы можете использовать следующую команду:

adb shell setprop debug.checkjni 1 

Это не повлияет на уже запущенные приложения, но любое приложение, запущенное с этого момента, будет иметь CheckJNI. (Изменение свойства на любое другое значение или просто перезагрузка снова отключит CheckJNI.) В этом случае, вы увидите что-то вроде этого в вашем выводе LogCat следующий раз, когда приложение запускается:

D Late-enabling CheckJNI 

Вы также можете установить Android: отладочная атрибут в манифесте приложения, чтобы включить CheckJNI просто для вашего приложения. Обратите внимание, что инструменты сборки Android будут делать это автоматически для определенных типов сборки.

Смежные вопросы