12
votes

"Il y avait une erreur d'API interne." Lors de l'exécution d'une application sur n'importe quel périphérique iPhone / iPod-Touch

Je suis en train de soumettre une application iPhone à l'App Store. Tout en faisant la dernière touche à l'application, j'étais en train de compiler et d'exécuter l'application sur mon iPhone lorsque j'ai reçu ce message:

Il y avait une erreur d'API interne.

La console avait ceci à dire: xxx

Le problème est spécifique à ce projet, d'autres projets ne subissent pas le même problème. Le même problème présente lorsqu'il est déplacé vers une autre machine, ou un autre appareil mobile est échangé dans.

Je devrais être très reconnaissant pour toutes les indications ou idées sur le sujet.


1 commentaires

Cela se produirait-il juste au début ou lorsque l'application est déjà courue pendant un certain temps?


14 Réponses :


2
votes

aha! Merci Heavens pour Subversion. Par comparaison avec une version de travail, j'ai découvert qu'un "uirequireddevicecapabilities" uirequiredevicecapacités "de mon info.plist était en faute. Un petit chiffre creuser a montré qu'il devait être un tableau ou un dictionnaire, et non une chaîne comme mon cas. Le réglage ainsi ...

<key>UIRequiredDeviceCapabilities</key>
<array>
    <string>still-camera</string>
</array>


3 commentaires

C'était aussi mon problème, dans mon cas, j'avais supprimé la chaîne "armv7" dans ce tableau, après avoir ajouté que cela a bien fonctionné.


Yah! Un problème résolu pour moi aussi que je déplace "armv7" de à root tout va bien.


Cela n'a pas résolu mon problème. Pour moi, cette erreur n'arrête que sur un seul appareil, ce qui permet de penser qu'il y a un problème avec cet appareil uniquement, les autres fonctionnent bien. Donc, pas de problèmes dans la construction de paramètres ou de ce que ce soit.



2
votes

Mon problème utilisait un profil de distribution, oublié de passer à un profil de développeur et c'était ce qui a provoqué l'erreur interne de l'API. J'espère que cela aide quelqu'un


0 commentaires

0
votes

J'ai également eu ce problème - le problème s'est avéré être dans les droits. J'avais obtenu la tâche-net-autorisez-vous à NO plutôt que oui. Une fois que cela a été correctement défini, tout fonctionnait à nouveau.


0 commentaires

8
votes

J'ai eu le même problème sur Xcode 4.5 Beta 4 lorsque j'ai essayé d'exécuter une application déjà installée sur mon appareil iOS. Vous pouvez essayer de supprimer votre application de l'appareil et de vous assurer que vous utilisez un profil de développeur pour la signature.


3 commentaires

Pareil ici. Faisons-nous quelque chose de mal ou est-ce un problème avec la bêta?


Après avoir regardé plus loin, je pense que c'est iOS 6, pas Xcode. J'ai trouvé que je peux installer des temps de multiples sur un périphérique iOS 5.1 à partir de Xcode 4.5, mais ce faisant sur mon appareil IOS 6 provoque l'erreur du serveur interne.


Pareil ici. Aperçu de Xcode mis à jour pour déboguer sur un périphérique avec la dernière version bêta iOS 6. Suppression de l'application fonctionnée.



1
votes

J'ai eu le même problème et cela a fonctionné lorsque j'ai supprimé l'application de mon téléphone et construit et couru à nouveau. Je suppose que vous avez peut-être testé une construction à partir d'une branche différente, puis j'ai essayé de revenir à la tienne.


0 commentaires

-1
votes

Comme expliqué dans un autre post avec le même problème, cela semble fou, mais vous ne pouvez pas également utiliser la version bêta de Xcode 4. Cependant, vous devez le garder dans votre main gauche pour autoriser votre iPhone à compiler avec la version non bêta. (Ne me demandez pas pourquoi, ça marche).

Si vous exécutez votre application avec Xcode 4.5 Aperçu et iOS 6 Beta 4, la deuxième fois que vous exécutez votre application sur l'appareil, vous obtiendrez l'erreur interne de l'API.

En théorie, vous ne pouvez pas utiliser Xcode 4.4 pour compiler sur votre iPhone iOS6 Beta 4.

mais ...

Il semble que, si vous lancez l'aperçu Xcode 4.5, connectez votre iPhone (il est donc reconnu), exécutez l'application sur celle-ci (même si vous obtenez l'erreur), quittez Xcode 4.5, lancez XCode 4.4 et .. Tadaaaaa. .. votre iPhone est maintenant reconnu comme un appareil autorisé à compiler sur ...

et bien sûr, Xcode 4.4 ne génère pas l'erreur API ...


0 commentaires

1
votes

Je traite du même problème, mais en raison de la suppression manuelle de dossier "Application / MyApp". J'ai copié les fichiers et la désinstallez. Ensuite, j'ai essayé de l'exécuter en utilisant Xcode. Maintenant, tout va bien.


0 commentaires

0
votes

1.Chèque de votre projet Info.plis Code de document (NON Table Liste - Ouvrir comme source code) .Ille peut être une erreur de configuration.

2.Je résolvez le problème de cette façon: Créez un nouveau projet, comparez le code Info.plis et réparez l'ancien.

ça fonctionne pour moi ..


0 commentaires

2
votes

https://forums.developer.apple.com/thread/11634

stipule que vous devez modifier le nom du projet à un nom anglais


2 commentaires

Fournir une réponse brève ici.


Plus d'informations: Mon nom de projet était en chinois et travaille bien depuis des années. Mais des versions apparemment récentes de Xcode ont changé quelque chose (j'utilise 7.1.1). Maintenant, un nom de projet avec des caractères chinois ne s'installa pas sur un téléphone, bien qu'il fonctionne bien dans l'émulateur. Je devais changer le nom du projet à quelque chose qui contenait uniquement des lettres romaines. Même un personnage chinois lui faisait échouer.



2
votes

J'ai eu le même problème. Mon cas était un iPhone qui a été utilisé pour la première fois sur l'ordinateur portable. Je l'ai réparé en ouvrant le projet en Xcode avec l'iPhone branché. XCode indiquera ensuite "Traitement des fichiers de symboles". Lorsque vous avez terminé, le déploiement de l'iPhone a travaillé à partir du créateur Qt.


1 commentaires

Même chose ici, je n'avais jamais synchronisé l'appareil avec iTunes.



0
votes

Vous devez enregistrer le périphérique à partir de Xcode.

Général -> Signature -> Inscrivez-vous.


0 commentaires

0
votes

Je l'ai eu lors de la suppression d'une extension de jour / widget et d'oublier de supprimer l'élément d'extension de l'application d'intégration où l'exesion est répertorie en tant que plug-in


0 commentaires

0
votes

J'ai eu le même problème lorsque j'ai essayé d'exécuter mon projet à partir d'un Mac différent de celui qu'il a été créé.

Mon problème était dans le fichier info.plist. Nous n'avions pu la comprendre que après avoir recréer le projet à partir de zéro et ajouter un fichier à la fois et essayer de le déboguer.

a remplacé le fichier d'informations suivant:

  1. CFBunDleDevelopmentregion Langue FR Nom avec $ (Développement_Language)
  2. Nom de CFBundleSurtable avec $ (nom exécutable)
  3. Nom de CFBundlename avec Placeholder $ (Nom de produit)

    supprimer

    cfbundlesignature

    capture d'écran de fichier diff


0 commentaires

0
votes

J'ai éteint mon iPhone et quand je le retournai!

Après tout essayé, j'ai remarqué que cela a fonctionné sur un autre iPhone, alors j'ai tout essayé sur l'appareil où il n'a pas fonctionné. Si malheureux que cette astuce inattendue devait être la solution pour moi.


0 commentaires