IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Command shell android


Sujet :

Android

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2013
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Février 2013
    Messages : 44
    Points : 17
    Points
    17
    Par défaut Command shell android
    Bonjour,
    Qui a une idée comment exécuter des commandes shell dans une application android sans utiliser adb!!!
    Est -il possible d’exécuter la commande dans une fichier en c et l'exécuter avec NDK!!

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    try {
        Process process;            
        process = Runtime.getRuntime().exec("ma commande");
    } catch (InterruptedException e) {e.printStackTrace();}
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2013
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Février 2013
    Messages : 44
    Points : 17
    Points
    17
    Par défaut
    merci pour votre réponse,
    j'ai essayé avec ce code pour déplacer une fichier vers la dossier data/local mais rien ne se passé et pas de deplacement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     Process sh;
    sh = Runtime.getRuntime().exec("/system/bin/cp /sdcard/fichier /data/local/");

  4. #4
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Le support de la commande cp est foireux sous android.

    Essaie d'utiliser dd à la place:

    Code shell : Sélectionner tout - Visualiser dans une fenêtre à part
    dd if=source_file of=dest_file
    Attention, il te faudra ajouter les droits idoines à ton application
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  5. #5
    Membre à l'essai
    Inscrit en
    Février 2013
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Février 2013
    Messages : 44
    Points : 17
    Points
    17
    Par défaut
    merci sinok pour votre réponse mais même problème

  6. #6
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    As tu au moins les droits nécessaires pour lire le fichier d'origine et écrire dans le répertoire de destination?
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  7. #7
    Membre à l'essai
    Inscrit en
    Février 2013
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Février 2013
    Messages : 44
    Points : 17
    Points
    17
    Par défaut
    oui j'ai ajouté la permission nécessaire pour lire la fichier du sdcard

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

  8. #8
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Le répertoire /data/local n'est pas accessible ainsi.

    Et tu n'y auras pas accès en écriture à moins d'avoir les droits root.
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  9. #9
    Membre à l'essai
    Inscrit en
    Février 2013
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Février 2013
    Messages : 44
    Points : 17
    Points
    17
    Par défaut
    j'ai exécuté mon application sur une émulateur rooter donc j'ai le droit ,
    avec invite de commande la commande fait la copie de fichier dans la dossier data/local

  10. #10
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    rooté ne veut pas dire que tous les utilisateurs (chaque application est un utilisateur différent) sont "root".
    rooté veut dire que l'application a accès à la commande "su" (enfin, si accepté par l'utilisateur dans le cas de SuperSU).
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

Discussions similaires

  1. []Commande shell
    Par phoenix736 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 09/10/2005, 20h31
  2. [Debutant] Commande shell
    Par drosophile dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 21/04/2005, 15h06
  3. commande shell dans un programme
    Par diefo dans le forum C
    Réponses: 3
    Dernier message: 15/08/2003, 13h37
  4. [VB6] comment savoir si la commande shell est terminée ?
    Par ghyscharlotte dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 30/07/2003, 19h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo