Profitez de certains tweaks sans jailbreak avec iPAPatcher
- 👨 Julien Antoine
- Il y a 4 ans
- 💬 16
En attendant, tout espoir n'est pas perdu, grâce au programme iPAPatcher, qui permet de bénéficier de certains tweaks malgré l'absence de jailbreak. A la fin de cet article, vous saurez comment utiliser iPAPatcher, et pourrez notamment profiter de YouTube en arrière-plan et sans publicités.
Préambule
Avant de se lancer dans les explications, il faut noter que le programme dont il est question, iPAPatcher, n'est pour l'instant disponible que pour MacOS. AltStore devra également avoir été installé sur votre machine, afin de pouvoir installer les applications modifiées sur votre iPhone ou iPad. Si cela n'est pas déjà fait, vous pouvez commencer par notre tutoriel sur AltStore. Le tutoriel présenté dans cet article requiert également un peu de connaissances essentielles et/ou de débrouillardise.
iPAPatcher est un petit programme open-source développé par Brandon Plank. Pour l'utiliser, vous devrez le télécharger depuis Github. La dernière version à l'heure d'écrire ces lignes est la 1.0. Privilégiez toujours la version la plus récente, sauf indication contraire de la part du développeur.
Si vous désirez comprendre le fonctionnement d'iPAPatcher, continuez la lecture normalement. Si vous préférez passer directement au tutoriel, vous pouvez ignorer la prochaine section, et vous rendre directement à la suivante.
Fonctionnement de ipaPatcher
Lorsque vous jailbreakez votre appareil, un système d'injection est installé, permettant par la suite aux développeurs de modifier le fonctionnement d'applications ou du système en injectant leur code dans celui écrit par Apple. L'autrefois populaire Substrate est aujourd'hui de plus en plus remplacé par Substitute, l'alternative initialement développée par comex, et depuis reprise par l'équipe unc0ver (menée par pwn20wnd), et libhooker, développé par l'équipe d'Odyssey (menée par Coolstar). Nous vous recommandons la lecture de notre article Quel gestionnaire de paquets utiliser en 2020 ? si vous désirez en savoir un peu plus sur le sujet.
Pour permettre à certains tweaks de fonctionner sur un appareil non jailbreaké, iPAPatcher va venir greffer aux applications concernées les librairies dynamiques écrites par les développeurs de tweaks, ainsi qu'une copie de Substitute, afin de forcer l'application à exécuter le code du tweak. Cette méthode souffre toutefois d'une limitation importante : elle doit modifier l'application originale pour lui intégrer le tweak voulu, ce qui a pour conséquences que :
- l'application modifiée doit être signée et installée manuellement sur l'appareil, à l'aide d'AltStore par exemple
- l'application ne pourra pas être mise à jour via l'AppStore
- si vous ne possédez pas un compte développeur Apple, elle devra être resignée tous les 7 jours pour continuer à fonctionner
- seuls les tweaks modifiant le comportement d'une application sont compatibles
Dès lors, tous les tweaks modifiant le système, tels que Waqt, Arc ou InstaLauncher par exemple, ne pourront pas être utilisés sans jailbreak. Certains tweaks complexes ne seront probablement pas compatibles non plus. Maintenant que vous connaissez les limitations d'iPAPatcher, il est temps de passer au tutoriel.
Tutoriel
Le tutoriel est découpé en 3 parties:
- Téléchargement et ouverture du programme
- Récupération du fichier IPA (l'application à modifier)
- Récupération du fichier DEB (le tweak à injecter dans l'application)
- Création de l'application modifiée et installation
Téléchargement d'IPA Patcher
- Téléchargez la dernière version disponible (1.0 au 30 novembre 2020) sur la page des releases d'iPAPatcher.
- Double cliquez sur le fichier ZIP téléchargé pour l'extraire (vous devriez maintenant avoir l'application iPAPatcher.app dans votre dossier).
- Ouvrez un terminal. Si vous n'avez pas l'habitude d'utiliser le terminal, vous pouvez sélectionner iPAPatcher, puis clic droit, Services, Nouveau terminal au dossier.
- Lancez iPAPatcher depuis le terminal, afin de visualiser les logs du programme dans la ligne de commande et comprendre plus facilement ce qui se passe en cas de problème. Pour cela, si vous avez ouvert le terminal comme expliqué au point 3, vous pouvez simplement coller la commande suivante dans le terminal, et appuyer sur la touche Entrée de votre clavier :
Contents/MacOS/iPAPatcher
- Si iPAPatcher n'est pas affiché à l'écran, cliquez sur son icône qui devrait être apparue dans le dock.
Récupération du fichier IPA
Jusqu'en septembre 2017, Apple sauvegardait toutes les applications installées sur vos appareils sur votre ordinateur. Malheureusement, ce n'est plus le cas depuis iTunes 12.7, ce qui rend cette tâche plus compliquée qu'elle ne l'aurait été à l'époque. Je n'ai pas trouvé de méthode miracle, n'hésitez donc pas à partager vos solutions dans les commentaires si vous en avez. Vous devrez donc vous débrouiller pour dénicher le fichier IPA correspondant à l'application que vous souhaitez modifier.
La première méthode nécessite d'avoir un deuxième appareil jailbreaké, afin de récupérer le fichier IPA de l'application désirée. Rendez-vous dans le dossier Applications en utilisant Filza, ou par SSH depuis votre ordinateur. Localisez le dossier VotreApplication.app, et copiez-le. Créez ensuite un dossier Payload (le nom est important), et collez-y VotreApplication.app. Compressez ensuite le dossier Payload en zip, puis renommez-le de Payload.zip à VotreApplication.ipa. Si vous rencontrez des problèmes d'installation (à la dernière étape de ce tutoriel), veuillez-vous référer à la section Résolution de problèmes.
Si vous ne possédez pas un deuxième appareil jailbreaké, certains sites proposent un catalogue assez étoffé d'applications, la plupart du temps crackées. Nous ne soutenons pas ce genre de sites et de méthodes, mais en 2020, c'est probablement la meilleure moins mauvaise solution pour obtenir un fichier IPA.
Une autre solution, 100% légale elle, consiste à utiliser Apple Configurator 2. Développée par Apple, cette application qui a pour but initial la gestion d'une flotte d'appareils permet notamment de télécharger des mises à jour sur votre ordinateur, après avoir configuré votre appareil pour y parvenir. L'inconvénient de cette solution, c'est qu'elle ne permet pas de télécharger n'importe quelle application, mais uniquement une mise à jour d'une application déjà installée sur votre appareil. Cela signifie que vous devrez potentiellement attendre plusieurs mois qu'une mise à jour soit disponible pour l'application de votre choix. De plus, Apple Configurator 2 nécessite mac0S 10.15.6 ou supérieur.
Récupération du fichier DEB
IPA Patcher accepte en théorie aussi bien les fichiers .deb que .dylib, ce qui signifie qu'il n'est pas nécessaire d'extraire la librairie dynamique du fichier DEB. Pour récupérer le fichier DEB de votre tweak, la méthode la plus simple consiste à utiliser Parcility, un outil que nous avons présenté dernièrement.
- Recherchez le tweak sur https://parcility.co/
- Téléchargez la version souhaitée dans le panneau de droite
Si le tweak est payant, ou non disponible sur Parcility, vous devrez trouver un autre moyen pour obtenir le fichier DEB. Une recherche sur Google ou éventuellement sur le Reddit /r/jailbreak devrait vous aider. Si vous possédez un autre appareil jailbreaké, ou que vous avez précédemment sauvegardé vos tweaks avec Batchomatic, vous pouvez récupérer le fichier DEB au sein de l'archive générée par Batchomatic, par exemple. De nouveau, si vous avez une meilleure solution, n'hésitez pas à en faire part dans les commentaires.
Patch de l'application & installation
Maintenant que vous êtes en possession de l'application et du tweak, le plus dur est derrière vous. Il ne reste désormais plus qu'à patcher l'application avec iPAPatcher, et de l'installer sur votre appareil.
- Cliquez sur Choose iPA en bas à gauche, et sélectionnez le fichier IPA de l'application
- Cliquez sur Choose dylib/deb en bas à droite, et sélectionnez le fichier DEB du tweak
- Cliquez sur Build new iPA
- Vous devriez voir défiler plein de lignes dans le terminal. Si tout se passe bien, une fenêtre vous avertira lorsque l'opération est terminée. Cliquez simplement sur Ok.
- Choisissez un emplacement pour enregistrer l'application modifiée.
- Votre application modifiée devrait maintenant être enregistrée dans le dossier que vous avez renseigné. Il ne vous reste plus qu'à l'installer sur votre appareil à l'aide d'AltStore (il faut que AltServer soit lancé, ainsi que l'application Mail qui héberge le plugin nécessaire au premier).
Et voilà. Normalement, si vous êtes arrivés jusqu'ici, vous devriez avoir une nouvelle icône sur votre écran d'accueil. Si vous aviez déjà un exemplaire de l'application installée, vous verrez que vous possédez désormais deux versions de l'application en question, que vous pouvez faire tourner en parallèle. Si vous n'avez pas besoin des deux, il est préférable de supprimer l'originale afin d'éviter de confondre les deux. Si vous conservez les 2, vous devriez pouvoir profiter des mises à jour sur la version officielle, et du tweak sans les mises à jour sur la version officieuse. La seconde version devra être signée tous les 7 jours afin qu'elle puisse continuer à fonctionner.
Résolution de problèmes
Appareil non supporté
Si lors de l'installation de l'application modifiée avec AltStore, vous obtenez un message du type "Appareil non supporté", cela est probablement parce que vous avez extrait manuellement l'IPA depuis un second appareil jailbreaké. Dans ce cas :
- reprenez votre dossier Payload, faites un clic droit sur VotreApplication.app, et cliquez sur Ouvrir le contenu du paquet.
- Localisez le fichier Info.plist, ouvrez-le dans un éditeur de texte, et faites une recherche sur UISupportedDevices.
- Supprimez ensuite les lignes correspondantes (la ligne en question + celles commencant par et finissant par ).
- Enregistrez le ficher, puis refaites la manipulation expliquée dans la section correspondante pour obtenir votre fichier IPA.
WatchKit 2.0
Si lors de l'installation, vous avez un message évoquant Watch, retournez de nouveau dans Payload/VotreApplication.app, et supprimez le dossier com.apple.WatchPlaceholder. Refaites ensuite la manipulation expliquée dans la section correspondante pour obtenir votre fichier IPA.
Conclusion
Si vous avez réussi à installer votre application modifiée avec le tweak de votre choix, félicitations ! Clairement, cette méthode est infiniment plus restreinte que ce qu'un jailbreak permet, et n'est pas infaillible, mais elle a le mérite de faire patienter en attendant la sortie de ce dernier. Pour certains, elle pourrait même suffire, en fonction de l'usage que vous faites du jailbreak.
J'ai réussi à modifier YouTube pour lui injecter YTAdBlock afin de pouvoir continuer la lecture avec l'écran verrouillé ou dans d'autres applications, et sans publicités. L'intégration du tweak MessengerNoAds dans Messenger a posé plus de problèmes en revanche, et après plusieurs tentatives, j'ai réussi à l'installer sur un iPhone 12 Pro, mais l'application ne s'ouvre pas. Cela est très probablement dû au fait que le tweak possède une dépendance, ainsi que des préférences.
J'espère que ce tutoriel vous aura été utile, et vous aidera à patienter jusqu'à un jailbreak pour tous les appareils sur iOS 14, espérons-le. Plus encore que d'habitude, n'hésitez pas à partager votre expérience dans les commentaires. Cela permettra aux autres de savoir quels tweaks sont fonctionnels via cette méthode, et leur donnera peut-être des idées. Bon hacking, et bonne Saint-Nicolas ! ;-)