Как запустить приложение для Android с помощью valgrind

Я искал последнюю неделю, пытаясь найти ответ на этот вопрос.

Как запустить приложение для Android с помощью valgrind? Я знаю, что могу запустить приложение с помощью команды «am», но она запускает приложение и закрывается.

Я пишу приложение, которое использует NDK для нативного кода C, и мне нужно проверить его на наличие предполагаемых ошибок памяти.

Редактировать:

Я узнал немного больше. Вы можете «обернуть» приложение сценарием оболочки.

Вот сценарий оболочки, который я использую:

#!/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

Я не думаю, что это правильно, потому что я не уверен, где сценарий оболочки подходит, и я ничего не вижу в logcat. Есть подсказки?

Edit2: О, сценарий оболочки обозначается командой "setprop" выше. Итак

adb shell setprop wrap.com.starlon.froyvisuals "logwrapper /data/local/val.sh"

я все еще ничего не вижу в logcat.

24
задан Scott 3 February 2012 в 05:32
поделиться

1 ответ

Я тоже столкнулся с этой проблемой. В моей ситуации я редактирую "val.sh" в windows & amp; adb отправляет его в эмулятор, но скрипт оболочки не может быть выполнен правильно. Затем я использую echo " * "> стиль val.sh, чтобы создать "val.sh", и он хорошо работает.

Таким образом, вы должны сначала убедиться, что «val.sh» может быть правильно интерпретирован.

1
ответ дан 29 November 2019 в 00:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: