Acquérir les permissions root sur iOS pour NSFileManager (Jailbreak)
Je suis en train d'écrire le fichier à la racine de la partition de l'appareil. C'est une application de Jailbreak de sorte qu'il est installé dans le dossier /Applications. Lors de l'écriture à la racine du système de fichiers à l'aide de NSFileManager
l'écriture échoue avec un "Permission Denied" erreur.
Il semble que mon application n'est pas exécuté en tant que root. Il est installé dans /Applications si. Comment mon application est-elle le devenir?
OriginalL'auteur JonasG | 2011-10-20
Vous devez vous connecter pour publier un commentaire.
Il est vrai, l'application doit s'exécuter en tant que root pour l'accès mobile non des répertoires. Après en avoir discuté avec Optimo et Saurik j'ai enfin trouvé la bonne façon d'obtenir les privilèges de root.
setuid(0);
etsetgid(0);
Ouvrez le fichier exécutable d'origine et remplacez son contenu par ce script:
Directement le lancement d'une racine de l'application échoue sur iOS. Par conséquent, nous remplaçons l'application exécutable principal avec un script qui lance la racine de l'exécutable.
Dans le terminal, accédez à l'app bundle.
chmod 0775
le fichier exécutable d'origine etchmod 6775
la copie d'un fichier exécutable.Bonjour,où je peux trouver ce chemin NSArray *chemins = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, OUI); NSString *docDirectory = [chemins objectAtIndex:0]; car je ne debug
Je fonctionne sur iOS 6, si je déplace le app bundle /Applications, il n'apparaît pas sur le springboard 🙁
Correction: je n'avais pas enlevé la vieille app installé via Xcode, de sorte que le point de départ n'était pas de l'inscription de la nouvelle avec le même rfcid
OriginalL'auteur JonasG