web-dev-qa-db-fra.com

Quelle est la différence entre l'ID d'application et l'ID de bundle? Où est l'ID d'application dans le projet Xcode?

Dans le fichier pList, il existe un ID de bundle sous la forme com.mycompany.myapp, mais Apple fournit également un ID d'application sur le portail des développeurs.

Ainsi, au fond, à quoi sert l'ID de bundle? Où pouvons-nous trouver l'ID d'application dans le projet Xcode?

55
user255607

Réponses aux questions OP

Quelle est la différence entre l'ID d'application et l'ID de bundle?

Étant donné que la plupart des gens considèrent l'ID d'application comme une chaîne, ils pensent qu'il est interchangeable avec l'ID de bundle. Cela apparaît de cette façon, car une fois que l'ID d'application est créé dans le Centre des membres, vous n'utilisez que le préfixe d'ID d'application qui correspond à l'ID de bundle du bundle d'application.

Où est l'ID d'application dans le projet Xcode?

Vous ne trouvez pas l'ID d'application dans Xcode. Il s'agit d'un objet (et pas seulement d'une chaîne) dans Member Center. Xcode est l'endroit où se trouve l'ID de l'ensemble. Il est spécifié lors de la création d'un nouveau projet. (capture d'écran ci-dessous) Chaque cible d'un projet aura un ID de bundle unique. Il peut être trouvé/modifié en sélectionnant le projet dans le navigateur de projet, en choisissant la cible et soit Général, soit Info dans la barre de saut.

L'interface Xcode est décrite ici ou ici (selon la façon dont Apple se sent ce jour-là).

Quelle est l'utilisation de l'ID de bundle?

Il définit de manière unique chaque application. Il est spécifié dans Xcode. Un même projet Xcode peut avoir plusieurs cibles et donc générer plusieurs applications. Un cas d'utilisation courant pour cela est une application qui a à la fois des versions lite/gratuite et pro/complète ou est marquée de plusieurs façons.

.


Définitions

  1. ID d'application

    Considérez cela comme un objet dans Member Center avec beaucoup de métadonnées, notamment:

    • ID de l'application Description
    • Préfixe de l'ID d'application
    • Suffixe de l'ID d'application
    • Services d'application
  2. ID de l'application Description

    Espaces alphanumériques plus

    Parfois, cela s'affiche à la place de l'ID d'application, ou une liste déroulante est triée par cet ID d'application

    (Je fais toujours la même chose que l'ID d'application avec les points changés en espaces)

  3. Préfixe de l'ID d'application

    Sélectionnez dans une liste de hachages disponibles au format Team ID (voir ci-dessous)

    Vous voulez presque toujours sélectionner celui intitulé "(Team ID)"

  4. Suffixe de l'ID d'application

    Une chaîne de style de nom de domaine inverse

    Cela doit correspondre à l'ID de bundle spécifié dans Xcode

  5. ID d'application explicite

    Décrit un ID d'application avec un suffixe d'ID d'application qui ne contient aucun caractère générique

    Ne peut être associé qu'à une seule application (en faisant correspondre exactement un ID de bundle)

    Compatible avec tous les services d'application

  6. ID d'application générique

    Décrit un ID d'application avec un suffixe d'ID d'application qui se termine par un astérisque

    Peut être associé à plusieurs applications (similaire à la correspondance générique CLI/bash Shell)

    Non compatible avec Game Center , Achat intégré ou Notifications push App Services

  7. Services d'application

    Une combinaison de

    • Protection des données
    • Centre de jeu
    • iCloud
    • Achat intégré
    • Audio inter-applications
    • Livret
    • Notifications push
  8. ID d'équipe

    Un hachage alphanumérique à 10 caractères

    Unique à chaque compte de développeur (comme dans le compte qui coûte 99 $/an, pas à tous les développeurs du compte)

  9. Identifiant Apple

    Un entier unique attribué par Apple lorsqu'une application est créée pour la première fois dans iTunes Connect.

  10. ID du bundle

    Une chaîne de style de nom de domaine inverse

    Défini dans Xcode

    Identifie de manière unique un ensemble d'applications sur un appareil ou un simulateur

    Doit avoir un ID d'application correspondant enregistré avec Apple pour déployer

    Utilisé pour distinguer les mises à jour d'applications des nouvelles applications

  11. Bundle d'application

    Le résultat du processus de construction dans Xcode. Bien qu'il ait une extension de .ipa, il s'agit d'un fichier Zip. Le contenu est une structure de répertoire très spécifique et contient tout ce dont l'application a besoin. Il semble que quelqu'un ait pris un fichier Mac .app à partir de/Applications, placé dans un répertoire nommé Payload, compressé, puis modifié l'extension.

  12. Cible

    Chaque projet Xcode a au moins 1 cible. Chaque cible spécifie une application qui peut être créée à partir du projet.

  13. SKU

    Apple vous permet de stocker une chaîne d'unité de stockage (alphanumérique, ne peut pas avoir d'espace) pour chaque application dans iTunes Connect. Apple ne fait rien avec cela, sauf l'afficher sur les rapports générés pour votre tenue de dossiers.

.


Boîte de dialogue Créer un projet iOS Xcode dans Xcode

Create Xcode iOS Project screenshot

.


Créer une page d'ID d'application dans le centre des membres

Create App ID screenshot

.


Page Informations sur l'application dans iTunes Connect

iTunes Connect screenshot

63
Bruno Bronosky

L'ID de bundle est l'identifiant d'une application, mais pas l'ID d'application. L'ID d'application est la connexion entre l'application et le profil d'approvisionnement.

Dans la section "À propos des ID de bundle" dans ici , vous pouvez voir, "Un ID de bundle identifie précisément une seule application".

Et à partir de ici , vous pouvez voir: "L'utilisation principale d'un ID d'application fait partie d'un profil de provisioning; il spécifie quelles applications sont autorisées par le profil à être signées et lancées.".

L'ID d'application se compose de 2 parties: "ID de graine de bundle" et "Chaîne de recherche d'ID de bundle". ID de graine de bundle oblige les applications à partager les données du trousseau, c'est-à-dire qu'il s'agit de l'entrée de porte-clés des applications qui ont le même ID de graine de bundle. La chaîne de recherche d'ID de bundle définit le nombre d'applications couvertes par cet ID d'application. Si vous utilisez un ID d'application générique, cela signifie que de nombreuses applications seront autorisées par le profil d'approvisionnement associé à cet ID d'application. Pour plus de détails, veuillez vous référer à ici .

34
Chengjiong

Simplement, un ID de bundle identifie précisément une seule application. Un ID de bundle est utilisé pendant le processus de développement pour approvisionner les appareils et par le système d'exploitation lorsque l'application est distribuée aux clients.

Au cours du processus de développement, vous utilisez l'ID de bundle d'une application à différents endroits pour identifier l'application. enter image description here

Considérant que, un ID d'application est une chaîne en deux parties utilisée pour identifier une ou plusieurs applications d'une seule équipe de développement.

enter image description here

L'ID d'équipe est fourni par Apple et est unique à une équipe de développement spécifique, tandis que la chaîne de recherche d'ID de bundle est fournie par vous pour correspondre à l'ID de bundle d'une seule application ou d'un ensemble de bundles ID pour un groupe de vos applications.

Il existe deux types d'ID d'application: un ID d'application explicite, utilisé pour une seule application, et des ID d'application génériques, utilisés pour un ensemble d'applications.

sources: Bundle ID , APP ID

12
mustafa

Plusieurs applications peuvent partager le même ID d'application. L'ID d'application n'identifie pas de manière unique une application.

Un ID d'application est une chaîne en deux parties utilisée pour identifier une ou plusieurs applications d'une seule équipe de développement

https://developer.Apple.com/library/content/documentation/General/Conceptual/DevPedia-CocoaCore/AppID.html

L'ID que vous voyez dans iTunes Connect, qui est unique parmi les applications, est connu sous le nom d'ID Apple Apple). Je m'excuse pour la confusion car personne à Apple le fera.

12
Steven Kramer

L'ID d'application est un combinaison de deux chaînes, sont séparés par un point (.). String1 est un identifiant d'équipe, qui est affecté à l'équipe de développement. (Fourni par Apple) String2 est un identifiant de bundle, est sélectionné par vous.

L'ID d'application a deux types.

  1. ID d'application explicite: Ici, l'ID d'équipe est utilisé pour faire correspondre une seule application avec un ID de bundle spécifique. Cet identifiant d'application est utilisé pour correspondre à une application uniquement. exemple: TEAM_ID.BUNDLE_ID

  2. ID d'applications génériques: Ici, l'ID d'équipe est utilisé pour faire correspondre plusieurs applications avec plusieurs ID de bundle. Cet identifiant d'application est utilisé pour correspondre à plusieurs applications. exemples: TEAM_ID.BUNDLE_ID1, TEAM_ID.BUNDLE_ID2 ...

1
Balaji