Analyse de la InstallerXposedFramework.bat script nous indique la raison de l'échec du script. Le contenu du script est le suivant :
@echo off
set adb=files\adb.exe
echo '
echo '
echo ' Connecting ZenFone ..
echo '
echo '
%adb% wait-for-devices
echo '
echo '
echo ' Pushing files ..
echo '
echo '
%adb% push assets\xposed-sdk21-x86\system /data/local/tmp/system
%adb% push files\installer /data/local/tmp
%adb% shell "su -c chmod 755 /data/local/tmp/installer"
echo '
echo '
echo ' Installing Xposed Framework ..
echo '
echo '
%adb% shell "su -c /data/local/tmp/installer"
echo '
echo '
echo ' Done, rebooting ..
echo '
echo '
%adb% reboot
Raison de l'échec
Au-dessus, le script se déroule sans problème jusqu'à ce qu'il frappe :
%adb% shell "su -c chmod 755 /data/local/tmp/installer"
dont les arguments n'ont pas été formatés correctement. Plus précisément, chmod
, 755
y /data/local/tmp/installer
sont considérés comme trois arguments distincts à fournir à l'application su -c
qui accepte un argument obligatoire (c'est-à-dire, la commande à exécuter), une identifiant de connexion facultatif et un nombre optionnel et arbitraire d'arguments à la fin.
Patch pour le script
Pour que le script fonctionne, la ligne :
%adb% shell "su -c chmod 755 /data/local/tmp/installer"
doit être modifié pour ressembler :
%adb% shell "su -c 'chmod 755 /data/local/tmp/installer'"
ya que chmod 755 /data/local/tmp/installer
est une commande unique ( chmod
) avec deux arguments qui lui sont propres ( 755 /data/tmp/installer
). L'ensemble de ce document sera ensuite fourni comme unique argument à su -c
et être exécuté avec les permissions Root, permettant au script de poursuivre son exécution.
Si le téléphone démarre en boucle
Alors la version de Xposed fournie avec le script est en quelque sorte incompatible. Le bootloop est indépendant du script d'installation.
Dois-je effacer la partition de données et reflasher le firmware, si j'exécute le programme d'origine ? InstallerXposedFramework.bat ?
Absolument pas, et voici pourquoi : les commandes qui poussent Xposed vers votre appareil sont les suivantes :
%adb% push assets\xposed-sdk21-x86\system /data/local/tmp/system
%adb% push files\installer /data/local/tmp
. Puisque, comme expliqué précédemment, la commande :
%adb% shell "su -c chmod 755 /data/local/tmp/installer"
est bogué et fait donc se bloquer le script, rien n'est en fait installé. La seule chose à faire est de vérifier si le dossier /données/local/tmp est vide, et supprime tout ce qu'il contient s'il ne l'est pas.