Bonjour,
Je souhaite me lancer dans la création de roms custom pour Android.
Une des première chose à faire est de pouvoir décompiler un fichier apk afin de modifier son contenu.
Je connais l'outil android-apktool en ligne de commande.

Ma question : comment créer un script afin de réaliser un clic droit sur le fichier apk et le décompiler ?
Idem dans le sens contraire => créer un script permettant de recompiler l'apk modifié ?

Merci de vos réponses.
Heu ! Tu veux faire un script pour simuler des actions graphique ?!

Sinon, pour roms custom c'est plutôt sut XDA qu'il faut aller voir.
Eh je ne sais quoi répondre à ta question.
Mon but serait de créer un script pour nautilus (qui s'appelle désormais fichiers) qui permet de décompiler ou de compiler un apk via le clic-droit.
Les manips sont possibles en ligne de commande avec l'outil android-apktools que j'ai installé sur ma fedora.
Voici la liste des options dispo avec cet outil :
Apktool v1.5.0.5a056e3 - a tool for reengineering Android apk files
Copyright 2010 Ryszard Wiśniewski <brut.alll@gmail.com>
with smali v1.3.4-ibot8, and baksmali v1.3.4-ibot8
Updated by iBotPeaches <connor.tumbleson@gmail.com> 
Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0)

Usage: apktool [-q|--quiet OR -v|--verbose] COMMAND [...]

COMMANDs are:

    d[ecode] [OPTS] <file.apk> [<dir>]
        Decode <file.apk> to <dir>.

        OPTS:

        -s, --no-src
            Do not decode sources.
        -r, --no-res
            Do not decode resources.
        -d, --debug
            Decode in debug mode. Check project page for more info.
        -f, --force
            Force delete destination directory.
        -t <tag>, --frame-tag <tag>
            Try to use framework files tagged by <tag>.
        --keep-broken-res
            Use if there was an error and some resources were dropped, e.g.:
            "Invalid config flags detected. Dropping resources", but you
            want to decode them anyway, even with errors. You will have to
            fix them manually before building.

    b[uild] [OPTS] [<app_path>] [<out_file>]
        Build an apk from already decoded application located in <app_path>.

        It will automatically detect, whether files was changed and perform
        needed steps only.

        If you omit <app_path> then current directory will be used.
        If you omit <out_file> then <app_path>/dist/<name_of_original.apk>
        will be used.

        OPTS:

        -f, --force-all
            Skip changes detection and build all files.
        -d, --debug
            Build in debug mode. Check project page for more info.

    if|install-framework <framework.apk> [<tag>]
        Install framework file to your system.

For additional info, see: https://github.com/iBotPeaches/brut.apktool
For smali/baksmali info, see: http://code.google.com/p/smali/
Je ne vois pas trop pourquoi ça serait la première chose à faire (passer via nautilus) pour faire une roms custom.
Je dirais même que vu le boulot, ça serait plutôt du temps de perdu. Mais bon chacun fait comme il veux.
Il suffit d'installer nautilus-actions, qui permet de définir dans le menu contextuel des actions. Une actions peut lancer un script avec des paramètres comme le nom du fichier sélectionné etc.
Enfin une réponse constructive merci. Je test dès que possible.

Merci de l'info concernant Nautilus action, je ne connaissais pas et cela à l'air superbe.
tos69400 wrote:Enfin une réponse constructive merci.
Aller sur XDA.
Merci philippe de tes réponses. Ne prend pas mal ce que j'ai écris => il n'y avait rien d'agressif dans mes propos.
Concernant xda, oui je suis dessus.
Maintenant ma question concerne des outils propre à ma distribution. Il est donc normal que je pose mes questions içi.

J'ai installé nautilus-action et il a vraiment l'air superbe encore merci.
Reste à trouver comment le paramétrer afin de prendre des commandes du terminal (exemple : apktool -d "fichier-sélectionné")
Pour nautilus-actions le plus simple c'est de te faire un petit script (genre wrapper). C'est pas obligatoire mais plus simple si tu veux debuguer (suffit de rajouter des echo redirigés vers un fichier), car à la moindre erreur du script, nautilus-action ne remonte aucune info.
#!/bin/bash
apktool -d "$1"
puis tu lances nautilus-actions-config-tool, tu ajoutes une nouvelle action, tu lui donne un nom, tu coches "afficher l'élément dans le menu contextuel de la selection" vu que c'est sur une selection de fichier que tu veux travailler. Dans l'onglet Commande tu donne le chemin vers ton script, et en paramètre du met %f (t'as le bouton légende pour voir tout ce qui est dispo, ya le choix!). Je crois que c'est a peu près tout. Le %f sera remplacé par le chemin vers le fichier selectionné et sera passé en argument ($1) de ton script. Tu enregistres les modifs, et normalement dans nautilus, clique droit sur un fichier, dans Nautilus Actions tu as ton action perso qui lancera ton script. Si tu selectionnes X fichiers, ton script sera appelé X fois. C'est beau.
Impeccable merci.
Je testerai dès retour à la maison.