Я искал последнюю неделю, пытаясь найти ответ на этот вопрос.
Как запустить Android-приложение с valgrind? Я знаю, что могу запустить приложение с помощью команды "am", но он запускает приложение и завершает работу.
Я пишу приложение, которое использует NDK для собственного C-кода, и мне нужно проверить его на наличие подозрительных ошибок памяти.
Изменить:
Я узнал немного больше. Вы можете "обернуть" приложение оболочкой script.
Здесь оболочка script использую:
#!/system/bin/sh
VGPARAMS='--error-limit=no'
export TMPDIR=/data/data/com.starlon.froyvisuals
exec /data/local/Inst/bin/valgrind $VGPARAMS $*
И вот setprop:
adb shell setprop wrap.com.starlon.froyvisuals "logwrapper valgrind"
И вот как я запускаю приложение:
adb shell am start -n com.starlon.froyvisuals/.FroyVisuals
Я не думаю, что это правильно, потому что я не уверен, где находится оболочка script, и я ничего не вижу в logcat. Любые подсказки?
Edit2: О оболочке script указывается команда "setprop" выше. Так
adb shell setprop wrap.com.starlon.froyvisuals "logwrapper /data/local/val.sh"
Я все еще ничего не вижу в logcat.