2010-11-16 53 views
2

Je suis incapable de compiler mon application dans Monotouch lorsque je sélectionne le profil de distribution d'entreprise complet que j'ai configuré. Tous les autres profils fonctionnent bien.Mon application monotouch refuse de se compiler pour la distribution avec l'index de tableau est hors de portée

Pour être précis: quand je frappe le bouton de construction je reçois

identité de signature Détection ...

0 erreurs 0 avertissements, construire juste échoué. Array index out of range

Je suppose qu'il s'agit d'un problème d'approvisionnement et que j'ai échoué à faire quelque chose d'important.

Il existe des pointeurs sur le Web pour publier des versions de distribution, mais pas de véritable documentation sur la distribution complète de l'entreprise.

Je donne les résultats suivants:

MonoTouch: Enterprise Edition

d'Apple: l'adhésion de l'entreprise, ont installé le certificat corp & dev certificat utilisateur et téléchargé les certificats de provisionnement pour dev, adhoc & entreprise et enfin créé le Identifiant de l'application

J'ai passé 2 jours à parcourir le web pour des problèmes similaires mais je n'ai rien trouvé de vraiment proche. À un moment donné, j'ai nettoyé tous mes profils avec le site Apple Dev et je les ai réimportés, ce qui a résolu d'autres problèmes que j'avais. Le fait d'avoir tous les droits/certificats d'entreprise signifie que je n'ai pas besoin d'UDID, je dois juste signer ma vie pour éviter toute distribution illégale. La seule chose autre que simplement quelque chose de manquant sur le front de provisionnement est que les UDID sont maintenus dans un tableau dans les certificats et comme je n'en ai pas spécifié pour ce build, il a des erreurs. (Mais il ne devrait pas sûrement!)

Si j'utilise la distribution adhoc qui, comme spécifié par UDID, je peux le charger sur ma machine.

Les pointeurs seraient grandement reçu

+0

Avez-vous un message d'erreur plus complet? Vous devriez être en mesure d'en trouver un dans ~/Bibliothèque/Logs/MonoDevelop/MonoDevelop.log –

+0

mhutch: merci pour la réponse. J'ai réussi à rectifier le problème, donc pour le bénéfice des autres qui pourraient avoir un problème similaire, c'est là que mon problème était; –

+0

Suite ... appuyez sur le bouton Entrée (duh). C'était un problème de provisioning et après beaucoup d'exploration et une lecture attentive de ce qui était sur mes certificats et profils de provisioning, j'ai remarqué que l'identificateur de bundle d'entreprise corp n'avait pas besoin que le nom de l'appât soit étiqueté à la fin. La morale de l'histoire est que vous devez vous assurer que tous les éléments de provisionnement sont corrects et correspondent. C'était mon premier message sur le forum et quelqu'un a répondu. Merci –

Répondre

0

J'ai eu une situation similaire.

"mtouch n'a pas pu être généré". Pas d'autres messages.

J'ai dû passer par le support technique et j'ai fini par trouver que c'était un bogue de compilateur et ils m'ont envoyé un correctif pour mon cas particulier. Je suppose qu'il sortira dans la prochaine version. Cependant, j'ai appris deux choses en cours de route qui pourraient vous aider. A) dans mon cas, le problème s'est dissipé si j'ai modifié le paramètre "Linker Behaviour" pour le projet. Projet-> [Projet] Options -> Construire -> iPhone Build -> Comportement du Linker

Essayez toutes les options disponibles. Voir si ça fait une différence.

b) Sur le même iPhone Construire page d'options que vous pouvez entrer « -v -v -v » aux « arguments supplémentaires de réglage. Vérifiez maintenant la sortie de génération après la compilation. Il peut y avoir des détails supplémentaires.

Enfin , Je me suis arraché les cheveux pendant quelques jours avec une erreur semblable à la tienne, à la fin c'était un bug du compilateur.Novell était assez rapide pour identifier et corriger le bug. Peut-être juste le connecter avec eux et voir ce qui se passe.

Bonne chance

+0

Thrag, merci pour votre contribution. J'ai eu cette erreur un certain nombre de fois sur des machines différentes alors la prochaine fois que je l'obtiens et ce n'est pas le résultat de ma stupidité (ne pas obtenir les noms de provisionnement corrects) je vais essayer. –

0

J'ai eu ce problème lors du passage entre mon « test » et « libérer » construit, qui avait des identifiants différents app - j'avais changé le profil de provisionnement « libérer », mais j'oublié de corrigez le nom d'affichage de l'application et l'identifiant de l'application sous Build/iPhone Application. Doutez que le nom d'affichage fasse une différence, mais l'identifiant de l'application le fait certainement.