Comment puis-je exécuter valgrind avec une application Android?

J'ai installé valgrind pour Android et je peux confirmer qu'il fonctionne comme j'ai essayé d'exécuter ls avec lui, et ça marche bien.

Mais comment exécuter une application Android avec un composant natif, je voudrais déboguer? J'ai regardé cette question: comment commencer une application Android avec Valgrind mais je n'ai aucune idée de la façon de la suivre. Comment enveloppez-vous une application dans un script shell? Qu'est-ce que "envelopper". Suivi du nom du paquet supposé être?

  • Orientation de capture de caméra sur les périphériques Samsung dans Android
  • Comment définir le texte de soulignement sur la visualisation de texte?
  • Android - cache la barre d'action pendant le démarrage, puis affiche-la à nouveau?
  • L'image de partage d'Android ne fonctionne pas
  • Impossible de trouver des informations sur le fournisseur pour 'ContentProvider'
  • JSON sur Android - sérialisation
  • J'ai essayé de le faire avec com.matthewmitchell.wakeifyplus étant mon package de demande:

    setprop wrap.com.matthewmitchell.wakeifyplus "logwrapper /data/local/valgrind" 

    Mais il dit "ne pouvait pas définir de propriété". Qu'est-ce que je suis supposé faire? Je ne trouve aucun guide étape par étape qui fonctionne. J'ai essayé ceci (je ne sais même pas ce que fait setprop):

     setprop com.matthewmitchell.wakeifyplus "logwrapper /data/local/valgrind" 

    Avec / data / local / valgrind étant un script shell avec des autorisations d'exécution qui est:

     #!/system/bin/sh VGPARAMS='--error-limit=no' export TMPDIR=/data/data/com.matthewmitchell.wakeifyplus exec /data/local/Inst/bin/valgrind $VGPARAMS $* 

    Mais lorsque je lance l'application avec:

     am start -a android.intent.action.MAIN -n com.matthewmitchell.wakeifyplus/.MainActivity 

    Valgrind ne se présente pas dans Logcat, même après l'avoir effacé.

  • Comment gérer les changements d'orientation de l'écran lorsqu'une boîte de dialogue est ouverte?
  • Comment afficher ToolTip dans Android?
  • Espace de la galerie au début et à la fin
  • Exemple MultiSelectListPreference
  • Comment puis-je gérer les cookies avec HttpClient dans Android et / ou Java?
  • Imprimez un fichier PDF sur une imprimante à l'aide de PrintWriter via la connexion Socket
  • One Solution collect form web for “Comment puis-je exécuter valgrind avec une application Android?”

    Vous obtenez l'erreur " ne pouvait pas définir de propriété " car VOUS NE POUVEZ PAS définir un nom de propriété d'une longueur supérieure à 31 , qui est le nombre maximum de caractères autorisés dans le nom de la propriété: https://stackoverflow.com/a/5068818/313113

    Essayez de réduire la longueur du nom du paquetage à moins de 31 caractères lorsque vous définissez la propriété avec la configuration de shell d'adb.
    Et utilisez un script bash pour tout simplement.
    Pour plus de détails, voir ma réponse ici: https://stackoverflow.com/a/19235439/313113

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.