«Impossible de se connecter à l'iTunes Store» achats intégrés


98

Je rencontre des problèmes pour tester mes achats via l'application. Je récupère des identifiants de produit valides, mais lors de l'achat, je reçois le redouté "Impossible de se connecter à l'iTunes Store". Ce qui est intéressant, c'est que la restauration des achats semble fonctionner - la connexion iTunes apparaît.

J'ai: - Vérifié que mes achats intégrés sont validés pour la vente - Vérifié, revérifié mon code source pour qu'il soit synchronisé avec la documentation d'Apple - Ajout d'utilisateurs de test appropriés - L'identifiant de l'application ne contient pas de caractère générique - les achats via l'application sont liés au application (l'application elle-même est à l'état rejeté par le développeur, les achats sont prêts à être soumis) - en attente - application réinstallée, solution nettoyée, tous les trucs vaudous


26
+1 pour "tous les trucs vaudous" - n'est-ce pas la vérité!
Craig Watkinson

2
Apple, pourquoi faites-vous cela si compliqué !!!
Borzh

Réponses:


113

Assurez-vous que vous vous êtes déconnecté de tout compte de production iTunes sur l'appareil.

J'obtenais cette erreur sur mon téléphone de test qui était connecté avec mon compte iTunes réel. Vous ne pouvez pas tester les applications à l'aide de votre compte iTunes de production, d'où l'erreur. Je souhaite juste qu'Apple fournisse une meilleure erreur afin d'éviter cette conjecture ...


1
Mon erreur était simplement de ne pas configurer un utilisateur Sandbox, j'ai oublié cette étape. Et ne vous connectez pas à partir de la section Paramètres >> iTunes de l'appareil b / c qui le cassera. Attendez et faites-le pendant le test réel.
Nathan Prather

Vous pouvez également obtenir cette erreur lors de la réutilisation d'un ancien compte sandbox que vous avez testé un IAP précédent sur une autre application avec (Mon scénario). Apple a vraiment besoin de mettre à jour la façon dont nous testons les IAP, je suis à court d'e-mails: 0
David Baez

Je le teste dans le simulateur, donc cela ne devrait pas être le problème ici, non?
Usama bin Attique

1
déconnecté de tous les comptes iTunes. son invite me pour la connexion requise, puis la transection échoue. a utilisé de nombreux comptes de testeur de sandbox mais ne fonctionnera pas.
bLacK hoLE

Pour moi, cela ne fonctionne pas non plus ... J'ai essayé de créer de nombreux comptes, certains avec un utilisateur de sandbox iTunes connecté, d'autres sans utilisateur connecté, même sans confirmation d'e-mail, rien ne fonctionne!
Borzh


25

Pour les nouveaux arrivants, assurez-vous que l'état de votre produit d'achat intégré est Ready to Submit, sans "métadonnées manquantes". Dans mon cas, ce qui manquait, c'était la localisation du groupe d'abonnement.

entrez la description de l'image ici


1
Je vous remercie! Dans mon cas, il manquait une localisation pour le nom d'affichage.
Justin

Dans mon IAP, il affiche «En attente de téléchargement». Je reçois toujours l'erreur
Vaibhav Jhaveri

C'est aussi ce qui a fonctionné pour moi. J'avais aussi mon compte itunes actif connecté, donc le compte actif n'avait pas d'importance pour moi
cherucole

10

J'ai eu ce problème et je suis convaincu que c'est un bogue. J'ai déposé un rapport de bogue avec l'ID de bogue 10108270

Le problème semble être que l'utilisateur de test est `` verrouillé '' et peut avoir quelque chose à voir avec une tentative d'achat d'un achat intégré dans une application déjà publiée avec ce compte.

Ma solution de contournement était de créer un nouvel utilisateur de test, mais jusqu'à ce qu'Apple me revienne, je ne peux pas fournir de meilleures solutions. Je mettrai à jour cette réponse lorsque j'aurai des réponses.


4
J'ai créé un nouvel utilisateur de test, mais cela n'a pas aidé.
arkir

Je suis désolé de ne pas pouvoir vous aider davantage, c'était ma solution de contournement, c'est dommage que cela ne fonctionne pas pour vous. Je garderai cette réponse à jour lorsque j'aurai plus d'informations.
James Webster

J'ai créé un nouveau compte de test et les achats via l'application ont recommencé à fonctionner. Merci!
Miha Hribar le

La création d'un nouvel utilisateur de test a résolu le problème pour moi. (Il y a quelques jours, en essayant d'utiliser mon ancien utilisateur de test, j'ai reçu un avis indiquant qu'il avait été désactivé, j'ai donc dû le réactiver. Peu de temps après, j'ai commencé à recevoir l' Cannot connect to iTunes storeerreur. Mais une fois que j'ai créé un nouveau test utilisateur, les achats ont fonctionné à nouveau.)
Andrew

nouvel utilisateur a travaillé pour moi. essayez juste avant de faire autre chose.
Okhan Okbay

7

Ce problème persiste en 2016. Incroyable. Voici ma solution:

Ajoutez un numéro de build. Cible> Général> Identités> Construire.


2
INCROYABLE. C'est toujours un problème en 2018. Je n'utilise pas de numéro de build en mode débogage car je l'incrémente uniquement pour les versions de production. Merci d'avoir publié ceci.
Steven Peterson

3

C'est un vieux fil qui est lié au problème auquel je faisais face aujourd'hui.

Dans mon cas, j'ai pu tester les achats intégrés sur mon appareil jusqu'à hier, mais cela a cessé de fonctionner aujourd'hui. Il s'est avéré qu'Apple avait poussé un «amendement pour les applications payantes» pour que je l'examine et l'accepte. Une fois que j'ai accepté l'amendement (sans le lire, bien sûr), tout a recommencé à fonctionner. N'a pas eu à créer un nouvel utilisateur de test ou toute autre solution de contournement.

Il peut y avoir de nombreuses raisons pour lesquelles les achats via l'application ne fonctionnent pas, mais assurez-vous que vous êtes correctement configuré itunesconnectou vous ne pourrez pas tester les achats via l' application.


2

Je rencontre le même problème. Pour moi ça arrive après cette secuence:

  • Installer l'application sur un appareil connecté à un compte britannique sur iTunes
  • Lancez l'application et utilisez un utilisateur de test aux États-Unis
  • Un message s'affiche indiquant que le compte n'est valide qu'aux États-Unis. Ferme l'application et lance automatiquement iTunes
  • Ouvrez à nouveau votre application et réessayez l'achat. Recevez des produits mais aucun autre rappel ou erreur.

Je ne sais pas s'il s'agit d'un problème sur la plate-forme IAP, mais je voudrais obtenir une erreur / un rappel pour le gérer d'une manière ou d'une autre dans mon code.

Pour continuer à tester vos IAP, essayez l'une de ces solutions:

  1. Supprimez le profil d'approvisionnement dans la zone Paramètres, supprimez l'application et déconnectez-vous du magasin dans les paramètres. Ensuite, allez dans XCode et changez les identités de signature en "Ne pas signer" pour ensuite les remettre (je sais comment ça sonne :) mais essayez) OU
  2. Réinitialisez tous les paramètres de votre appareil (Paramètres -> Général ...). De toute évidence, vous perdrez tous les paramètres de cet appareil ...
  3. Tuez l'application iTunes sur l'appareil (menu multitâche) et déconnectez-vous du Store dans les paramètres

Si rien de ce qui précède ne fonctionne, cela peut être un problème sur la plate-forme IAP, voir mes commentaires ci-dessous.


Merci, mais ni la méthode 1 ni la méthode 2 ne fonctionnaient pour moi. Impossible de se connecter à iTunes. :(
arkir

En fait, je me suis essayé et je ne peux pas non plus! J'ai le sentiment que c'est un problème AUJOURD'HUI / RÉCENT avec la plate-forme. Mais je ne trouve aucun lien pour le confirmer (statut). Argh !. Je le laisse quelques heures et vois si c'est le cas et c'est quelque chose d'extérieur aux développeurs
Juan Fran Jimenez

Avez-vous essayé de tuer l'application iTunes sur l'appareil (menu multitâche) et de vous déconnecter du magasin dans les paramètres?
Juan Fran Jimenez

Permettez-moi d'ajouter que Game Center (bac à sable au moins) est instable depuis environ 5 jours. Ce n'est que la nuit dernière a commencé à mieux fonctionner. Je le mentionne car mon code IAP n'a pas changé depuis ma réponse et maintenant cela fonctionne. J'ai tendance à penser qu'il y a eu une erreur sur la plate-forme Apple IAP et qu'elle était également liée à Game Center.
Juan Fran Jimenez


1

Vous pouvez également obtenir cette erreur lors de la réutilisation d'un ancien compte sandbox que vous avez testé un IAP précédent sur une autre application avec (Mon scénario). Apple a vraiment besoin de mettre à jour la façon dont nous testons les IAP, je suis à court d'e-mails: 0


J'ai eu ce problème aussi. Parfois, la création d'un nouvel utilisateur aide. De plus, vous n'avez pas besoin d'utiliser un vrai email. Je passe par - ## à la fin du mien et continue à en ajouter de nouveaux.
Jeremiah

1

J'ai pu acheter dans l'application sur iPhone mais pas sur iPad (11.0.2). J'ai essayé avec toutes les solutions mentionnées mais aucune n'aide. Après avoir essayé toutes les autres possibilités, j'ai finalement pu le faire fonctionner.

Lorsque vous créez un compte de test dans iTunes connect, ne vérifiez pas l'ID de messagerie. S'il est vérifié, iap renvoie l'erreur «Impossible de se connecter à iTunes». Cela semble étrange mais c'est ainsi que cela a fonctionné pour moi. Sur iPhone, indépendamment de la vérification des e-mails, je peux acheter en utilisant un compte de test.


J'ai lu ceci et cela avait l'air fou au début, mais cela a fonctionné. J'ai eu exactement le même problème avec le compte de test, incapable de faire des achats sur iPad mais fonctionnant bien sur iPhone. Très étrange!
axanpi

Oui. C'est bizarre. Notre application a été rejetée en raison de ce problème et j'ai dû expliquer à l'équipe d'examen Apple la raison et l'avoir approuvée.
Anish

1

Voici la liste de contrôle exhaustive si vous avez cette erreur "impossible de se connecter à iTunes Store":

  • Assurez-vous qu'un utilisateur sandbox a été créé dans App Store Connect

  • Le simulateur NE prend PAS en charge l'achat intégré: test sur un appareil réel

  • Le bac à sable est peut-être inaccessible. Vérifiez l' état du système Apple
  • Vérifiez que votre application dispose d'une version groupée (CFBundleVersion)
  • Vérifiez que le produit est disponible à la vente. L'avez-vous créé dans App Store Connect?

  • Si iOS 12 précédent, déconnecté de tout compte iTunes de production sur l'appareil. Sinon, vous pouvez simplement vous connecter dans l'application de développement avec votre compte sandbox.


0

Cette erreur s'est également produite lorsque SKProductsRequest a passé un NSSet incorrect:

Faux:

let products = NSSet(objects: ["id1", "id2"])

Correct:

let products = NSSet(objects: "id1", "id2")

0

Dans mon cas, j'ai oublié de traiter .faileddans transactionState. En particulier SKPaymentQueueue.default().finishTransaction(transaction),.


0

Le même problème s'est produit pour moi, et j'avais vérifié le problème, y compris le formulaire Apple , je ne pouvais pas trouver de solution.

Aujourd'hui, en vérifiant l'appareil, j'ai constaté que les éléments suivants

Dans les paramètres de l'appareil -> iTunes et l'App Store ont trouvé un autre identifiant Apple connecté . J'ai donc essayé signOut et vérifié à nouveau l'achat d'InApp, cela fonctionnait parfaitement. Veuillez donc vérifier que le problème est lié au même problème ou non.

Merci et salutations, Unnikrishnan.P


0

Je devais aller dans Paramètres> iTunes et App Stores, puis faire défiler vers le bas jusqu'au champ "Compte Sandbox" et me déconnecter à partir de là. Maintenant ça marche !!!

entrez la description de l'image ici


0

En plus de toutes les autres méthodes décrites ici, si vous travaillez avec des abonnements, il semble que vous deviez vous assurer que vous avez généré un secret partagé:

"Pour tester ou proposer des abonnements à renouvellement automatique, vous devez disposer d'un secret partagé principal ou utiliser un secret partagé spécifique à l'application pour chaque application."

Un secret partagé principal est généré à partir de l'onglet "Secret partagé" de la section "Utilisateurs et accès" d'App Store Connect.

Un secret partagé spécifique à l'application est généré dans lequel vous gérez les achats in-app de l'application elle-même.


0

J'ai réparé le mien! Si vous obtenez une Error Domain=SKErrorDomain Code=2 "Cannot connect to iTunes Store"erreur, assurez-vous d'insérer SKPaymentQueue.default().finishTransaction(transaction). Cela a fonctionné pour moi après avoir ajouté SKPaymentQueue.default().finishTransaction(trans)ce qui suit:

func paymentQueue(_ queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) {
    for trans in transactions{
        if trans.transactionState == .purchased {
            print("Successful.")
            SKPaymentQueue.default().finishTransaction(trans)
        } else if trans.transactionState == .failed {
            print("failed!")
            print(trans.error)
            SKPaymentQueue.default().finishTransaction(trans)
        }
    }

Trouvé sur le site Web des développeurs Apple, ici

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.