Comment déployer une application iPhone de Xcode sur un appareil iPhone réel sans disposer d'un certificat de 99 $ USApple?
On dirait que l'application n'est pas signée. Téléchargez ldid à partir de Cydia puis utilisez-le comme suit: ldid -S /Applications/AccelerometerGraph.app/AccelerometerGraph
Assurez-vous également que le fichier binaire est marqué comme exécutable: chmod +x /Applications/AccelerometerGraph.app/AccelerometerGraph
J'ai utilisé un mélange de deux howtos: Jason et alex . Avec le second, nous avons l'avantage de pouvoir déboguer. Je vais surtout copier les deux ci-dessous (et simplifier les alex):
Mise à jour janvier 2012: cela fonctionne toujours sur le SDK 4.2.1 et iOS 5.0.1 - Je viens de tout tester sur un nouvel ordinateur et un nouvel appareil!
Corrigez votre kit de développement logiciel iPhone pour autoriser l'utilisation de ce certificat:
Lancez le trousseau Access.app. Sans éléments sélectionnés, dans le menu Trousseau, sélectionnez Assistant de certificat, puis Créer un certificat.
Cliquez sur Continuer
Cliquez sur Continuer
Supprimez le champ d'adresse Email .
Cliquez sur Continuer jusqu'à la fin .
Vous devriez voir "Ce certificat racine n'est pas approuvé" . Ceci est prévu.
Configurez le kit de développement logiciel (SDK) de l’iPhone pour autoriser l’utilisation du certificat auto-signé:
Sudo /usr/bin/sed -i .bak 's/XCiPhoneOSCodeSignContext/XCCodeSignContext/' /Developer/Platforms/iPhoneOS.platform/Info.plist
Si vous avez ouvert Xcode, redémarrez-le pour que cette modification soit prise en compte.
Et si vous êtes sur iOS 5, c'est tout! Essayez-le maintenant! Cela ne permettra peut-être pas le débogage, mais l'application sera là!
J'ai été très surpris par cela car, en tant que vous devriez le savoir , je n'ai aucune idée de la nature de tous ces piratages! Je n’ai fait qu’améliorer un peu ce que j’avais trouvé ailleurs, comme je le faisais remarquer.
Donc oui, la méthode entière ne fonctionne plus de la même façon et je ne pouvais pas en chercher une nouvelle ... Sauf pour ceci, qui utilise un outil appelé Theos mais je ne pouvais pas passer à travers tout le processus.
Enfin, si vous devez le désinstaller pour quelque raison que ce soit, vérifiez la fin de ce message. Dans mon cas, je le devais parce que je ne pouvais pas comprendre pourquoi tout le bleu de cette méthode avait cessé de fonctionner et je ne m'en souciais plus puisque nous avions déjà la licence attendue depuis longtemps. (Le numéro DUNS prend beaucoup de temps ...)
.
.
.
.
.
Sur votre iPhone jailbreaké, installez l'application AppSync en ajoutant la source ** http://repo.hackyouriphone.org **
Supprimer les exigences du SDK pour le code et les droits d'accès (j'aime sed !):
Sudo /usr/bin/sed -i .bak '/_REQUIRED/N;s/YES/NO/' /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist
Faites attention à la partie iPhoneOS5.0.sdk
. Si, par exemple, vous utilisez iOS 4.2 SDK, remplacez-le en conséquence:
Sudo /usr/bin/sed -i .bak '/_REQUIRED/N;s/YES/NO/' /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist
Terminez la suppression des exigences en appliquant des correctifs à Xcode. Cela signifie édition binaire:
cd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Plug-ins/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/
dd if=iPhoneOS\ Build\ System\ Support of=working bs=500 count=255
printf "\xc3\x26\x00\x00" >> working
/bin/mv -n iPhoneOS\ Build\ System\ Support iPhoneOS\ Build\ System\ Support.original
/bin/mv working iPhoneOS\ Build\ System\ Support
chmod a+x iPhoneOS\ Build\ System\ Support
Si vous avez ouvert Xcode, redémarrez-le pour que cette modification (et la dernière) prenne effet.
Ouvrez "Projet> Modifier les paramètres du projet" (à partir du menu). Cliquez sur l'onglet "Construire" . Recherchez "Identité de signature de code" et son enfant "Tout périphérique iPhoneOS" dans la liste, puis définissez les deux à l'entrée "Ne pas utiliser le code" :
Après cela, n'hésitez pas à annuler l'étape 3. Au moins dans mon cas, tout s'est bien passé.
Paramétrer Xcode pour signer avec notre certificat personnalisé (le premier guide pratique). Cette étape peut probablement être ignorée si vous ne voulez pas pouvoir déboguer:
mkdir /Developer/iphoneentitlements401
cd /Developer/iphoneentitlements401
curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt
mv gen_entitlements.txt gen_entitlements.py
chmod 777 gen_entitlements.py
Branchez votre iPhone et ouvrez Xcode. Fenêtre ouverte> Organiseur. Sélectionnez le périphérique dans la liste de gauche et cliquez sur "Utiliser pour le développement". Vous serez invité à vous connecter à un site Web d'approvisionnement, cliquez sur Annuler. Il est là pour faciliter le provisionnement légitime, mais ne rend pas plus difficile le non-provisionnement illégitime.
Maintenant Vous devez faire cette dernière partie pour chaque nouveau projet que vous faites . Allez au menu Projet> Nouvelle phase de construction> Nouvelle phase de construction de script d’exécution. Dans la fenêtre, copiez/collez ceci:
export CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
if [ "${PLATFORM_NAME}" == "iphoneos" ]; then
/Developer/iphoneentitlements401/gen_entitlements.py "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
codesign -f -s "iPhone Developer" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"
fi
.
.
.
.
Pour la 1ère partie:
Sudo mv -f /Developer/Platforms/iPhoneOS.platform/Info.plist.bak /Developer/Platforms/iPhoneOS.platform/Info.plist
Pour la 2ème partie:
Sudo mv -f /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist.bak /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist
Sudo mv -f iPhoneOS\ Build\ System\ Support.original iPhoneOS\ Build\ System\ Support
si vous avez effectué l’étape 3 au lieu de 2, modifiez-la simplement en conséquence:
Sudo mv -f /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist.bak /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist
pour le reste, il ne fait que revenir sur ce que vous avez fait sur XCode et supprimer /Developer/iphoneentitlements401/gen_entitlements.py
si vous le souhaitez:
Sudo rm -f /Developer/iphoneentitlements401/gen_entitlements.py
Afin de tester votre application sur un appareil réel au lieu de payer les frais de développeur Apple (ou de jailbreaker votre appareil), vous pouvez utiliser le nouvel approvisionnement gratuit pris en charge par Xcode 7 et iOS 9.
Voici la marche à suivre plus ou moins depuis la documentation (ce qui est plutôt bien, lisez-le donc):
1. Ajoutez votre Apple ID dans Xcode
Sélectionnez XCode> Préférences> onglet Comptes> bouton Ajouter (+)> Ajouter Apple ID. Voir la documentation pour plus d'aide.
2. Cliquez sur l'onglet Général dans le navigateur de projet .
3. Choisissez votre Apple ID dans le menu contextuel Équipe.
4. Connectez votre appareil et choisissez-le dans le menu schéma.
5. Cliquez sur le bouton Résoudre les problèmes .
Si vous obtenez une erreur indiquant que le nom de l'ensemble n'est pas valide, remplacez-le par un élément unique.
6. Exécutez votre application
Dans Xcode, cliquez sur le bouton Build and run.
7. Faites confiance au développeur de l'application dans les paramètres de l'appareil
Après avoir exécuté votre application, vous obtiendrez une erreur de sécurité car l'application que vous souhaitez exécuter ne provient pas de l'App Store.
Sur votre appareil , accédez à Paramètres> Général> Profil> votre-identifiant-Apple > Confiance votre-identifiant-Apple > Confiance.
8. Exécutez à nouveau votre application sur votre appareil.
C'est ça. Vous pouvez maintenant lancer votre propre application (ou toute autre application pour laquelle vous avez le code source) sans avoir à débourser 99 dollars. Merci, Apple, d’avoir finalement permis cela.
Vous ne pouvez pas, pas si vous parlez d'applications construites avec le SDK officiel et déployées directement à partir de xcode.
Vous devrez jailbreaker votre appareil.
Il existe un moyen de déployer des applications iPhone sans payer sur Apple. Vous devrez jailbreaker votre appareil et suivre les instructions données dans http://www.alexwhittemore.com/ ? p = 398
Rien de ce que j'ai vu nulle part n'indique que vous pouvez déployer de manière ad hoc sur un véritable iPhone sans certificat (payé).
Hier soir, je parcourais le Apple Developer et, dans le certificat de provisioning, j'ai trouvé quelque chose comme: "Signature des membres de l'équipe". Je pense qu'il y a un moyen d'ajouter des membres de l'équipe au profil rémunéré. Vous pouvez simplement demander au propriétaire de l'identifiant de l'application (payant) de vous ajouter en tant que membre de l'équipe. Je ne suis pas sûr. Toujours à la recherche de ça.
Non, c'est facile à faire. Dans Xcode, définissez Active Configuration sur Release. Modifiez le périphérique de Simulator en périphérique - quel que soit le SDK. Si vous souhaitez exporter directement vers votre iPhone, connectez-le à votre ordinateur. Appuyez sur Build and Go. Si votre iPhone n'est pas connecté à votre ordinateur, un message s'affichera vous indiquant que votre iPhone n'est pas connecté.
Si cela vous concerne: (l'iPhone n'était pas connecté)
Allez dans le dossier de vos projets puis dans le dossier de construction à l’intérieur. Allez dans le dossier Release-iphoneos et installez l'application à l'intérieur, glissez-déposez sur l'icône iTunes. Lorsque vous synchronisez votre appareil iTouch, il le copie sur votre appareil. Il apparaîtra également dans iTunes en tant qu'application pour iPhone.
J'espère que cela t'aides!
P.S.: Si un certificat n’est pas valide, il suffit de cliquer sur le projet dans Xcode, sur la petite icône de projet dans la pile de fichiers située à gauche, puis sur Pomme + I ou sur Obtenir des informations dans la barre de menus. Cliquez sur Construire en haut. Sous Signature du code, changez l'identité du signataire du code - Tous les appareils iPhone OS doivent ne pas signer.
Tout dépend de la version de Xcode que vous utilisez, car différentes versions utilisent différentes méthodes pour se déployer sur votre iPhone sans profil de provisionnement.
Xcode 3.2.1 est une bonne version facile à résoudre, mais nous devons savoir quelle version vous utilisez.
La solution publiée par Cawas fonctionne également parfaitement avec XCode4. Cependant, quelques modifications ont été apportées à l'interface utilisateur de l'EDI. Vous devez donc effectuer des recherches pour trouver Run Script :)
Dans la vue Navigateur de projet, cliquez sur l'élément racine du projet, puis dans la fenêtre du milieu, sélectionnez Cible, puis cliquez sur l'onglet Phases de construction. En bas, vous verrez le bouton Ajouter une phase de construction, cliquez sur et sélectionnez Ajouter un script d'exécution, puis collez "codesign "script posté par les Cawas.
Il n'y a pas de solution de contournement. Vous ne pouvez déployer des applications ad hoc que si elles sont enregistrées avec votre appareil. Cela vous empêche de créer votre propre app store.