8
votes

Conversion de l'identifiant de paquet de caractères génériques en identifiant unique

J'ai une application dans l'App Store qui utilise un identifiant de paquet générique. Je souhaite mettre en œuvre l'achat in-app, qui nécessite un identifiant non sauvage. Comment convertir l'ID WildCard d'une application existante à un ID statique pour l'achat intégré et la notification push?


0 commentaires

3 Réponses :


3
votes

Vous n'avez pas besoin de modifier l'ID de l'application, il vous suffit de créer un nouveau fichier de provisioning pour l'ID spécifique que vous avez déjà expédié, puis signez la version mise à niveau de votre application avec le nouveau certificat de signature de code .

C'est-à-dire que si l'identifiant de paquet de la vieille application était com.yourcompany.myapp et signé avec un certificat COM.YourCompany. * Certificat, vous venez de créer un nouveau certificat COM.YourCompany.MyApp, mais vous quittez l'identifiant de l'appui de l'application. comme avant.


5 commentaires

L'application et le cert ont été com.yourcompany. *. Il n'a jamais eu d'identifiant spécifique. Était toujours une faute générique. Cela signifie donc que je devrai changer l'ID du paquet en quelque chose de spécifique et d'obtenir un nouveau cert droit?


Je ne savais pas que cela fonctionnerait pour utiliser un astérisque dans votre identifiant de paquet ... Donc, si vous l'avez fait, je suppose que vous devriez peut-être le changer.


Vous venez de me mettre à travers cet enfer, cela est la réponse. Si vous avez un certificat de distribution de caractères génériques, vous pouvez avoir des problèmes. Mais votre application a toujours un identifiant de paquet. Créez simplement une nouvelle carte d'application, à l'aide de votre identifiant précédent, mais postfix l'ID de paquet (tel qu'utilisé dans l'application, pas de caractères génériques), puis créez un certificat de distribution.


@Jonathan, avez-vous pu obtenir une notification de mise à jour à tous les utilisateurs de tous les utilisateurs qui avaient déjà téléchargé l'application?


@ADEWREW, oui, le paquet réel de mon application n'a pas changé, alors oui, les mises à jour n'étaient pas différents et que les utilisateurs sont capables de mettre à niveau seulement.



3
votes

En bref, vous pouvez convertir une application déjà soumise qui utilise un identifiant Wildcard Bundle sur un ID d'application unique. Cependant, vous allez avoir des problèmes ou des retombées d'un point de vue de l'utilisateur si vous le faites.

Apple utilise Bundle ID's pour identifier les applications de l'App Store (d'où le terme ID d'application: -)).

Le problème que vous êtes confronté est que votre application est déjà sur l'App Store avec des téléchargements utilisateur possibles. Maintenant, lorsque vous mettez à jour votre application avec la nouvelle ID d'application unique, les utilisateurs qui ont déjà téléchargé votre application (avec l'ancien ID d'application) ne recevront pas la mise à jour (avec la nouvelle ID d'application unique).

La raison pour laquelle cela se produit est que vous avez maintenant un nouvel identifiant de paquet dans votre application. Sans connexion à l'ancien identifiant d'application. Étant donné que les applications ne peuvent avoir qu'une seule référence à un ID d'application. Il est généralement judicieux de conserver une identification d'application la même chose tout au long de la version de la production et de mises à jour de votre application.

Si vous créez un identifiant unique pour votre application (que vous pouvez). Les utilisateurs qui téléchargent la nouvelle application mise à jour tout seront tous fins et dandy, mais pour les utilisateurs qui ont téléchargé votre application avant la mise à jour. Eh bien ... Vous avez maintenant officiellement créé une application orpheline pour ces utilisateurs, ces utilisateurs n'obtiendront jamais cette mise à jour car elle ne correspond pas à l'ID de l'application.

En ce qui concerne la situation. Je ne suis pas sûr s'il y a. Je ne peux que suggérer que vous TOUJOURS Créez des identifiants d'application uniques pour vos applications de version de production futures.


Afin de créer une application qui vous permet d'utiliser la notification push de la notification push dans l'achat d'applications . Vous devrez créer un ID d'application qui est un identifiant d'application unique. Je recommanderais toujours que vous utilisez des identifiants uniques pour vos applications. Cela vous fera sauver une tonne de maux de tête plus tard sur la route.

à des fins de clarification, les éléments suivants sont un identifiant unique

  • com.companyname.appname (Convention de nommage préférée pour l'ID d'application unique)
  • Appname.companyName

2 commentaires

Y a-t-il un moyen de contourner cette situation? Est-il possible d'activer les achats in-app pour une application qui utilise une carte générique sans perdre la notification de mise à jour pour toutes les personnes qui ont déjà téléchargé l'application?


@Andrew non tu ne peux pas. Étant donné que pour pouvoir avoir des achats intégrés, vous devez commencer par un ID d'application unique. Un peu comme scénario de Catch-22. Meilleur moyen de résoudre ce serait d'utiliser des identifiants d'application uniques lors de la distribution des applications.



14
votes

L'identifiant de l'ensemble pour une application doit toujours rester identique entre les mises à jour, mais l'Appid peut en réalité être différent. Donc, tout ce que vous avez à faire est de créer un nouvel appel qui a utilisé le même identifiant de paquet que l'application d'origine au lieu d'une carte sauvage.

Applications utilisant une base générique nécessite toujours un identifiant de paquet normal. Le Wildcard Appid vous permet d'utiliser n'importe quel identifiant de paquet que vous aimez, mais il en a toujours besoin d'un.

http://developer.apple.com/library/ios /#qa/qa1713/_index.html https://developer.apple.com/library/ios/#technotes /tn2259/_index.html


1 commentaires

Merci beaucoup de bovine, exactement ce que je cherche.