2010-11-20 37 views
1

Y a-t-il un moyen de donner à un testeur le binaire exact qui sera téléchargé sur l'App Store pour tester? Fondamentalement, ce que je veux savoir, c'est s'il est possible de construire la source puis de la signer deux fois: une fois avec la distribution ADHOC et ensuite avec la distribution App Store.iPhone/iOS: construire une fois, signer deux fois

J'ai été brûlé par certains éléments d'image mis en cache et je veux savoir si je peux empêcher cela sans utiliser un projet de construction dédié.

... Vive

Répondre

1

Vous pouvez exécuter vous codesign. Je devrais me contenter de bloguer sur la façon de re-signer des applications à un moment donné, mais pour la plupart, vous voulez extraire les règles et droits sur les ressources, remplacer MyApp/embedded.mobileprovision et ensuite faire quelque chose comme codesign -f -s 'iPhone Developer' --entitlements=extracted-entitlements-file --resource-rules=extracted-resource-rules (je peux avoir la syntaxe légèrement faux).

(Bien sûr, ce n'est pas le même « binaire exacte », depuis embedded.mobileprovision et la signature intégrée diffère.)

Cependant, j'ai vérifié dernière, vous n'avez pas besoin. iOS ne nécessite pas que le profil d'approvisionnement intégré soit installé; il ne cherche qu'un "similaire" (vous pouvez donc ajouter un périphérique à un profil sans avoir à re-signer toutes vos anciennes versions). Je ne suis pas sûr de ce qui compte comme «similaire» (même ID d'application, grappe de regroupement et droits d'accès?), Mais j'ai pu exécuter une version App Store en installant le profil d'approvisionnement Ad Hoc correspondant.

Lorsque vous dites "brûlé par certains éléments d'image mis en cache", voulez-vous dire que ce n'était pas une construction propre? I recommande fortement de mettre en place un serveur de construction qui construit des builds propres à partir de caisses propres; exactement comment vous allez à ce sujet dépasse la portée de cette réponse (nous utilisons Buildbot et une pile de scripts), mais cela semble beaucoup mieux que de soumettre des builds générés par une machine de développeur aléatoire (cela signifie aussi que je peux installer des SDK bêta aléatoires sans gâcher les soumissions d'applications).