Distribution ad-hoc d'applications iPhone

2»

Réponses

  • AliGatorAliGator Membre, Modérateur
    02:00 modifié #32
    En même temps j'ai jamais mis le iTunesArtwork non plus :P
    Bien sûr du coup quand je distribue l'appli y'a pas d'icône dans iTunes (car Icon.png permet d'avoir l'icône dans l'iPhone du client une fois installé, mais elle n'est pas utilisée par iTunes, même si iTunesArtwork n'est pas présent, c'est vrai que c'est dommage du coup).

    Mais bon, moi je crois ce qu'il y a écrit dans la doc, ils disent d'appeler ça iTunesArtwork sans extension, donc c'est que ça doit être vrai ^^
    Après quand tu publies sur iTunesConnect, tu postes un fichier, et leur script lit que le contenu (via $_FILES ou équivalent), sans se soucier du nom du fichier. Donc oui, dans ce process là , si on publie le fichier à  part du fichier .ipa zippé quand on poste le formulaire dans iTunes Connect, ils sont capables de reconstituer tout comme il faut avec les bons noms si besoin.
  • muqaddarmuqaddar Administrateur
    02:00 modifié #33
    OK. Merci pour ces précisions Ali.
  • groumpfgroumpf Membre
    02:00 modifié #34
    dans 1262717704:

    Mais bon, moi je crois ce qu'il y a écrit dans la doc, ils disent d'appeler ça iTunesArtwork sans extension, donc c'est que ça doit être vrai ^^


    Ca marche pour moi mais bizarrement le logo n'est pas nickel (comme pour les autres applis), comme si il était décalé vers le bas (dans la fenêtre de l'iphone, pas celle des applications de la bibliothèque).
  • LastikoLastiko Membre
    02:00 modifié #35
    Ali a raison , mais faut aussi un dossier Payload
    j'avais testé y a petit moment

    http://arstechnica.com/apple/news/2009/03/app-store-lessons-adding-artwork-to-ad-hoc-distros.ars
  • AliGatorAliGator Membre, Modérateur
    02:00 modifié #36
    Exact, on peut mettre ça dans un .ipa qui n'est qu'un ZIP avec le Artwork et le dossier Payload.
    Mais si on fait comme indiqué dans la doc, à  savoir ajouter le iTunesArtwork au projet avant de compiler (et donc ce dernier vient se mettre dans le bundle de l'appli directement), ça marche aussi pour la distribution AdHoc.
  • groumpfgroumpf Membre
    02:00 modifié #37
    A propos de ZIP j'ai un petit off topic à  vous soumettre :

    je suis sous 10.5.8 et quand je compress (menu droit) mon Distribution profile et mon appli (sélection de 2 fichiers), parfois ça marche, parfois non dans le sens où mon application se résume à  une dizaine de fichiers et le zip fait 16ko au lieu de 308ko.

    C'est vraiment bizarre, je n'ai pas trouvé l'explication. Ca semble être un gros bug mais c'est quand même énorme de laisser passer ça.
  • KiwixKiwix Membre
    02:00 modifié #38
    Bonjour tout le monde,  et bonne année tant que j'y suis!  :D

    Je me permet de m'incruster dans la conversation car un client m'a justement posé une question identique aujourd'hui.
    Ils voudraient lancer une campagne de tests utilisateurs pour l'appli que je leur fourni et pour cela cherchent un moyen user-friendly de distribuer l'application aux dits testeurs.

    La solution de base est de fournir un Development Provisionning Profile + le .app. Mais est-il possible (sans passer par l'AppStore) d'obtenir une sorte de package comme un .ipa comprenant l'application et le Provisionning Profile associé pour rendre l'opération plus simple pour un utilisateur lambda (et pas bêta! :P) ?
  • Eddy58Eddy58 Membre
    02:00 modifié #39
    dans 1263226002:

    La solution de base est de fournir un Development Provisionning Profile + le .app. Mais est-il possible (sans passer par l'AppStore) d'obtenir une sorte de package comme un .ipa comprenant l'application et le Provisionning Profile associé pour rendre l'opération plus simple pour un utilisateur lambda (et pas bêta! :P) ?


    Je ne vois pas comment faire plus simple, point de vue utilisateur il a juste à  faire glisser les 2 fichiers dans iTunes, rien de bien méchant tout de même. :)
  • KiwixKiwix Membre
    02:00 modifié #40
    Oui, mais le monde est peuplé d'Homer Simpson en puissance et le client coloré veut se prémunir de tout test en échec lié à  un gros naze incapable de faire glisser 2 fichiers. (c'est résumé  :P)
  • Eddy58Eddy58 Membre
    02:00 modifié #41
    Ensuite effectivement dans ton cas de figure (  :D ), il doit être possible de faire un installer maison qui déplace les 2 fichiers dans les répertoires appropriés, et même pourquoi pas lancer la synchro iTunes...
  • AliGatorAliGator Membre, Modérateur
    02:00 modifié #42
    Notez que je ne sais pas si vous avez déjà  remarqué, mais le Provisionning Profile est déjà  embarqué dans le .app : si on ouvre le package, on remarque qu'il existe un "embbeded.mobileprovision" ou un truc comme ça dans le ".app"... Et qu'il correspond exactement au ProvProfile utilisé pour compiler... (donc celui qu'on fournit usuellement au client pour installer l'appli sur son iTunes quand on a bien rentré l'UDID de son iPhone dans le Profile)...

    Du coup en voyant ça j'ai jamais compris pourquoi il fallait absolument fournir le PP avec le .app alors qu'il est déjà  dans le .app... iTunes pourrait se démerder et le trouver comme un grand quand on glisse un .app, non ? Pffff.

    Sinon tu peux peut-être essayer de faire un .ipa (ce n'est qu'un ZIP avec le .app et 2 ou 3 autres fichiers, odnt le iTunesArtwork, mais je me demande si on peut pas fouttre le PP dedans genre à  la racine et voir si iTunes le reconnait)
  • muqaddarmuqaddar Administrateur
    02:00 modifié #43
    Lors de la distribution AdHoc, quand on renvoit une nouvelle version de son application, la sandbox de la version précédente n'est bien sûr pas écrasée ? (je ne l'ai jamais fait, et je ne sais pas comment iTunes gère ça lorsque l'on installe la nouvelle version).
  • SagahiSagahi Membre
    02:00 modifié #44
    Bonjour,

    J'ai lu vos message et je pense que quelque chose m'a echapé.

    Je dois envoyer à  un client une application afin qu'il la test, voila comment j'ai procedé :

    - Dans le iPhone Developer Program / Program Portal

    1/ Dans la rubrique "Devices", j'ai ajouté son iPhone avec en "Device Name" son nom, et en "Device ID" son UDID

    2/ Dans la rubrique "App IDs", j'ai ajouté un App ID com.masociete.nomdelapp

    3/ Dans la rubrique "Provisioning", sous rubrique "Distribution" (j'avais testé Development mais apparement c'est pas ca, j'ai perdu un device pour rien :-/) J'ai fais "New Profil",
    Distribution Method : Ad Hoc
    Profile Name : NOMDUCLIENTTesting
    App ID : l'ID de l'application definie precedement
    Devices : celui du client et le mien

    J'ai ensuite telechargé le provisionning que j'ai fait glissé dans Xcode via le menu "Window -> Organizer" (Il est dans la liste des "Provisionning Profiles" de l'Organizer.

    J'ai fermé completement XCode puis relancé

    J'ai double liqué sur le nom de l'app en sous rubrique de "Target"

    * Onglet "Build" :

    Configuration : Release
    Code Signing -> Code Signing Identity -> Any iPhone OS Device -> Je selectionne le profil Distribution que je viens de creer.
    Le reste par defaut

    * Onglet "Properties"

    Identifier : com.masociete.nomdelapp

    Je reviens ensuite dans Xcode, je selectionne "iPhone Device 3.1.2 (Base SDK)" et "Release"

    Je compile (cmd+shift+k pr supprimer l'ancienne compil cause bug sdk derniere version, puis cmd+enter pour compiler).

    Tout se passe bien, je recupere le .app dans le dossier "Release-iphoneos" de l'application, et l'envoi ainsi que le .mobileprovision à  mon client.

    Il fait glisser les 2 fichiers vers son itunes (version windows) , synchronise, et la , bien que le Provisionning soit bien sur son iphone, l'application ne veut pas se copier et genere une erreur... !

    Quelqu'un pourrait m'indiquer ou je me suis trompé ?

    Merci Beaucoup !
  • LastikoLastiko Membre
    02:00 modifié #45
    de memoire il te manque le entilements.plist
  • AliGatorAliGator Membre, Modérateur
    02:00 modifié #46
    Exact. Crées un Entitlement.plist, décoche la case qu'il y a dans ce plist, pour lui dire que l'appli ne doit pas être débuggable, rajoute "Entitlement.plist" dans les build settings pour dire d'utiliser le fichier que tu viens de créer comme entitlements, et rebuilt le tout !
  • SagahiSagahi Membre
    02:00 modifié #47
    Merci à  vous ! je viens effectivement de voir ca dans le guide de deploiement apple.

    Par contre lorsque je compile ca veut plus se lancer sur l'iphone... mais je ne pense pas que ce soit lié, je vais tout refaire à  zero au propre.
  • DjobirdDjobird Membre
    avril 2010 modifié #48
    Bonjour,
    j'en suis à  la dernière étape, et la ca coince.

    En mode dev mon appli se lance et marche nikel sur l'iphone. Voulant la montrer au client, je m'entraine avec l'iphone d'un pote pour l'installe adhoc.
    Donc je suis la procedure à  savoir mettre mon certificat sur le site pour avoir un certificat de déploiement, certificat que je rajoute à  la session de mon ordi.
    J'ai ensuite créé un provisionning profil de type déploiement adhoc avec comme device mon iphone et celui de mon ami, profil que je dl et installe sous l'organizer.
    Je vais ensuite sous xcode, je créé une nouvelle configuration, dans la quelle je précise d'utiliser le profil de de déploiement, et au quel je rajoute un Entitlement.plist avec get-task-allow décoché, et je spécifie ensuite que ma target doit utiliser ce Entilement.

    Bon jusque la ok, ca va. Mais maintenant, si je tente de lancer l'appli sur mon iphone, l'appli se lance mias plante imediatement avec l'erreur : Error launching remote program: failed to get the task for process 2522.

    J'ai pu rater quelque chose ? 

    Edit : Je viens de voir qu'au lancement, Xcode veut lier l'appli au debuguer. Je dois modifier une variable pour que cela ne se fasse pas ?
  • groumpfgroumpf Membre
    02:00 modifié #49
    Tu es sûr d'avoir utilisé une configuration release et pas debug ?
    Moi je duplique la configuration release que j'appelle ad hoc et je la modifie ensuite.
    On peut aussi vérifier que la compilation utilise le bon profile en notant son ID (hexa), il doit apparaitre dans une ligne packaging je crois.
Connectez-vous ou Inscrivez-vous pour répondre.