Jump to content

[Résolu] Lancer un binaire système depuis une application android


drakaz

Recommended Posts

Je ne suis pas un fin développeur mais j'essaye, avec mon maigre bagage en java, de réaliser une mini application qui lance des scripts shell...tout fonctionne bien..sauf l'appel système :(

Si quelqu'un de charitable veut bien m'aider.. :)

Edited by drakaz
Link to comment
Share on other sites

Il s'est écoulé 18 minutes entre ton premier post et ton dernier ... tu aurais donc eu le temps ;)

Je ne peux pas t'aider techniquement car je ne me suis pas encore penché sur le SDK Android, mais je pense qu'il y a sans doute moyen de faire ce que tu veux faire autrement que comment tu veux le faire.

Mais pour essayer de cerner ton problème ... quand tu dis

tout fonctionne bien..sauf l'appel système

ça veut dire quoi ? Ton appli plante ? Tu as un message d'erreur ? Un code de retour de la fonction système qui n'est pas documenté ?

Link to comment
Share on other sites

en fait ca répondait rien du tout, mais ca ne lançais surtout rien.

J'ai modifier la commande par hasard et tout fonctionne...no comment :D

Process process = Runtime.getRuntime().exec("/system/bin/su /system/xbin/camenable");

Bon par contre j'ai toujours un probleme pour lancer un process de la même manière, mais qu'il reste en tache de fond..

Link to comment
Share on other sites

Avec linux pour que ça tourne en tâche de fond, il faut terminer ta commande par un espace suivi d'une esperluette (&)

Genre :

> superBinaire &

Donc essaye :

Process process = Runtime.getRuntime().exec("/system/bin/su /system/xbin/camenable &");

C'est peut être pas le mieux mais dans un premier temps ça peut te dépanner si ça fonctionne.

Edited by Androc
Link to comment
Share on other sites

Finalement j'ai simplement utilisé un nouveau thread..ca roule :)

class logcat implements Runnable {

public void run() {

Process process = null;

String[] env = {"com.android.galaxo"};

try {

process = Runtime.getRuntime().exec("/system/bin/su /system/xbin/logcat_to_sd");

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

Link to comment
Share on other sites

Eh bien tant mieux :)

Si quelqu'un de calé au niveau du SDK Android peut confirmer que c'est la "bonne solution" ou que "c'est moche mais si il veut faire ça, c'est à peu près le seul moyen" ça serait bien ;)

Comme ça, non content d'avoir trouvé ta solution tu progresserais vers les cimes divines de la jolie programmation sur Android.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...