11
votes

Storekit pour renvoyer tous les ID du produit

Cette question est un peu différente des autres que j'ai trouvées ici. Mon in App Storekit travaille, je peux énumérer des produits dans mon magasin avec succès. J'ai traversé la documentation de Apple et je n'ai jamais vu ma question abordée (je l'ai peut-être manquée).

Mon client (à but non lucratif) aimerait pouvoir accepter des dons via leur application. Je voudrais leur permettre d'ajouter de nouveaux événements de donation à la volée sans que les utilisateurs doivent mettre à jour leur application. Ce que je veux dire, c'est qu'ils ont peut-être un spécial "Aidez-nous parrainer un événement de cette journée d'arbre à venir" et accepter des dons particuliers à cette affaire. P>

Je lis actuellement des produits comme celui-ci: P>

SKProductsRequest *request= 
         [[SKProductsRequest alloc] initWithProductIdentifiers: 
          [NSSet setWithObjects: @"goldSponsor", @"silverSponsor"];


0 commentaires

3 Réponses :


26
votes

Vous devez malheureusement fournir à tous les identifiants des produits que vous souhaitez obtenir des informations pour autant que je puisse voir.

Un moyen de gérer cela consiste à stocker l'identifiant de votre produit sur un serveur distant, puis à apporter une demande au serveur pour extraire l'ensemble actuel d'ID lors du chargement du magasin.

Cela vous permettrait d'ajouter ou de supprimer des produits du côté iTunes des choses et de ne pas avoir à soumettre de mises à jour binaires à votre application.

Je pense que vous pouvez probablement trouver un support heureux en mettant en cache la liste des produits dans l'application iPhone, puis faites une demande rapide de voir s'il y avait eu des modifications afin que vous n'ayez même pas besoin d'obtenir la liste complète de chacun temps.

Ceci pourrait être fait en utilisant une API HTTP simple sur le côté serveur ou même un fichier XML que vous tirez.

du Guide de programmation d'achat dans l'application

Apple vous recommande de récupérer le produit identifiants de votre serveur, plutôt que les y compris dans une propriété liste. Cela vous donne la flexibilité Pour ajouter de nouveaux produits sans mettre à jour votre application.


1 commentaires

Merci! C'était ce que j'avais peur de. Espérons que cela me donnera raison de les pousser pour obtenir un serveur pour cela.



2
votes

J'ai le même problème, mais je pense avoir un moyen de le résoudre en planifiant à l'avance avec les ID du produit. Au lieu de nommer chaque identifiant de produit quelque chose de spécial comme "goldsponsor", il suffit de numéroter "1", "2", "3" ... pour autant que vous voulez ajouter. Définissez le nom sur "Gold Sponsor" et la description à ce que vous voulez. Lorsque votre application démarre en cours d'exécution, demandez les NE PREMIER NDS de produit séquentiel. S'ils sont tous retournés comme valides, demandez un autre ID de produit N avant d'obtenir des ID invalides à quel point vous avez terminé.

Je prévois de le faire avec un contenu hébergé Apple. J'envisage également d'utiliser le champ Description pour le produit pour encoder des informations détaillées sur les données que je téléchargeant (dans mon cas les coordonnées de coin d'une carte). J'utiliserai toujours l'intégralité "com.company.product.1" pour chaque identifiant et la numérotant séquentiellement de là.


1 commentaires

ERR ... Mais ce n'est pas le moment que vous supprimez / pas clair à la vente de votre identification de votre logique s'arrêtera à travailler.



0
votes

Non, vous ne pouvez pas obtenir tous les produits de l'App-Store sans IDS

dépend de la documentation Apple

 Entrez la description de l'image ici


0 commentaires