应用ID和捆绑ID有什么区别? Xcode项目中的应用ID在哪里?

时间:2010-11-24 21:55:33

标签: iphone xcode

在pList文件中,有一个com.mycompany.myapp形式的软件包ID,但Apple也在开发人员门户网站上提供了应用程序ID。

因此,基本上,捆绑ID的用途是什么?我们在哪里可以找到Xcode项目中的应用ID?

5 个答案:

答案 0 :(得分:62)

OP问题的答案

应用ID和捆绑ID有什么区别?

  

因为大多数人认为App ID是一个字符串,所以他们认为它可以与Bundle ID互换。这样看起来是因为一旦在会员中心创建了App ID,您就只能使用与应用程序包的Bundle ID匹配的App ID Prefix

Xcode项目中的应用ID在哪里?

  

您在Xcode中找不到App ID。它是成员中心中的对象(不仅仅是字符串)。 Xcode是找到Bundle ID的地方。在创建新项目时指定。 (下面的屏幕截图)项目中的每个Target都有一个唯一的Bundle ID。通过在项目导航器中选择目标以及跳转栏中的常规或信息来选择项目,可以找到/更改它。

     

Xcode界面为described herehere(取决于Apple当天的感受)。

捆绑包ID的用途是什么?

  

它唯一地定义了每个App。它在Xcode中指定。单个Xcode项目可以有多个目标,因此可以输出多个应用程序。一个常见的用例是一个具有lite / free和pro / full版本的应用程序,或者是多种方式的品牌。


解释

  1. App ID

      

    将此视为会员中心的一个对象,其中包含许多元数据,包括:

         
        
    • 应用ID说明
    •   
    • App ID前缀
    •   
    • App ID后缀
    •   
    • 应用服务
    •   
  2. 应用ID说明

      

    字母数字加空格

         

    有时您会看到此而不是App ID,或者下拉列表按此App ID排序

         

    (我总是将其与点ID更改为空格的App ID相同)

  3. App ID前缀

      

    从团队ID格式的可用哈希列表中选择(见下文)

         

    您几乎总是想要选择标有“(团队ID)”

    的那个
  4. App ID后缀

      

    反向域名样式字符串

         

    这必须与Xcode中指定的Bundle ID匹配

  5. 明确的应用ID

      

    描述具有不包含通配符的应用程序ID后缀的应用程序ID

         

    只能与单个应用相关联(通过完全匹配捆绑ID)

         

    与所有应用服务兼容

  6. 通配符应用ID

      

    描述具有以星号结尾的应用程序ID后缀的应用程序ID

         

    可以与多个应用相关联(匹配类似于CLI / bash shell通配符匹配)

         

    游戏中心应用内购买推送通知应用服务不兼容

  7. 应用服务

      

    的组合      
        
    • 数据保护
    •   
    • 游戏中心
    •   
    • 的iCloud
    •   
    • 应用内购买
    •   
    • Inter-App Audio
    •   
    • 存折
    •   
    • 推送通知
    •   
  8. 团队ID

      

    10个字符的字母数字哈希

         

    每个开发者帐户都是独一无二的(在帐户中,每年的费用为99美元,而非帐户中的每个开发者)

  9. Apple ID

      

    Apple在iTunes Connect中首次创建应用时分配的唯一整数。

  10. 捆绑ID

      

    反向域名样式字符串

         

    在Xcode中定义

         

    在设备或模拟器上唯一标识应用程序包

         

    必须具有与Apple注册的匹配的App ID才能部署

         

    用于区分应用更新与新应用

  11. 应用程序包

      

    Xcode中构建过程的结果。虽然它有.ipa的扩展,但它是一个zip文件。内容是一个非常特定的目录结构,并保存应用程序所需的一切。看起来有人从/ Applications中获取了一个Mac .app文件,放入一个名为Payload的目录,压缩它,然后更改扩展名。

  12. 目标

      

    每个Xcode项目至少有一个目标。每个目标指定一个可以从项目构建的应用程序。

  13. SKU

      

    Apple允许您为iTunes Connect中的每个应用程序存储 Stock Keeping Unit 字符串(字母数字,不能有空格)。 Apple不会对此做任何事情,只会在为记录保存而生成的报告上显示。


  14. 在Xcode中创建Xcode iOS Project对话框

    Create Xcode iOS Project screenshot


    在会员中心

    中创建应用程序ID页面

    Create App ID screenshot


    iTunes Connect中的应用信息页面

    iTunes Connect screenshot

答案 1 :(得分:34)

Bundle ID是App的标识符,但App ID不是。 App ID是App和配置文件之间的连接。

here的“关于捆绑ID”部分,您可以看到“捆绑ID可以精确识别单个应用”。

here,您可以看到,“应用ID的主要用途是作为配置文件的一部分;它指定要通过配置文件授权哪些应用进行签名和启动。”

App ID有两部分:“捆绑种子ID”和“捆绑ID搜索字符串”。 捆绑种子ID 使应用程序共享密钥链数据,也就是说,它是具有相同捆绑种子ID的应用程序的密钥链条目。 捆绑ID搜索字符串定义此App ID涵盖的应用程序数量。如果您使用通配符应用程序ID ,则意味着许多应用程序将由与此应用程序ID关联的配置文件授权。有关详细信息,请参阅here

答案 2 :(得分:12)

简单地说,捆绑ID可以精确识别单个应用。在应用程序分发给客户时,在开发过程中使用软件包ID来配置设备和操作系统。

在开发过程中,您可以在许多不同的位置使用应用的捆绑ID来识别应用。 enter image description here

然而,应用程序ID是一个由两部分组成的字符串,用于标识来自单个开发团队的一个或多个应用程序。

enter image description here

团队ID由Apple提供,对于特定开发团队而言是唯一的,而捆绑ID搜索字符串由您提供,以匹配单个应用的捆绑ID或一组捆绑ID。应用

有两种类型的应用ID:用于单个应用的显式应用ID,以及用于一组应用的通配符应用ID。

来源:Bundle IDAPP ID

答案 3 :(得分:11)

多个应用可以共享相同的应用ID。 App ID不能唯一标识应用程序。

  

App ID是一个由两部分组成的字符串,用于标识来自单个开发团队的一个或多个应用程序

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

您在iTunes Connect中看到的ID,其中 在应用中是唯一的,称为应用程序的Apple ID。我为这种困惑道歉,因为苹果公司没有人愿意。

答案 4 :(得分:1)

App id是两个字符串的组合,用句点(。)分隔。 String1是团队ID ,已分配给开发团队。(由apple提供) String2是一个包ID ,由您选择。

App ID有两种类型。

  1. 明确的应用ID:此处,团队ID仅用于匹配具有特定捆绑ID的一个应用。此应用用户ID仅用于匹配一个应用。 示例:TEAM_ID.BUNDLE_ID

  2. 通配符应用ID:此处,团队ID用于匹配具有多个捆绑ID的多个应用。此应用ID用于匹配多个应用。 示例:TEAM_ID.BUNDLE_ID1,TEAM_ID.BUNDLE_ID2 ...