捆绑标识在iOS项目中意味着什么?

捆绑标识在iOS项目中意味着什么?,ios,Ios,当我使用命令行工具模板时,它在向导中有一个包标识符。bundle标识符是什么意思?这与名称空间类似吗?包标识符是唯一的字符串,用于向系统标识应用程序。这与显示名称(名称空间通常是框架中的前缀)相比,iOS使用显示名称在springboard上显示应用程序的名称 捆绑包标识符通常(并非总是)以反向DNS表示法(即com.myCompany.myApp)写入。根据: 捆绑标识允许iOS和macOS识别应用程序的任何更新。您的捆绑包ID必须在Apple注册,并且对您的应用程序是唯一的。捆绑包ID是特定

当我使用命令行工具模板时,它在向导中有一个包标识符。bundle标识符是什么意思?这与名称空间类似吗?

包标识符是唯一的字符串,用于向系统标识应用程序。这与显示名称(名称空间通常是框架中的前缀)相比,iOS使用显示名称在springboard上显示应用程序的名称

捆绑包标识符通常(并非总是)以反向DNS表示法(即com.myCompany.myApp)写入。

根据:

捆绑标识允许iOS和macOS识别应用程序的任何更新。您的捆绑包ID必须在Apple注册,并且对您的应用程序是唯一的。捆绑包ID是特定于应用程序类型的(iOS或macOS)。同一捆绑包ID不能同时用于iOS和macOS应用程序

编辑 从Xcode 11.4开始,如果您想支持通用购买功能,您可以对iOS和macOS应用程序使用相同的捆绑标识

Xcode 11.4支持构建和分发macOS应用程序作为通用购买。要将macOS应用程序作为通用购买分发,请在创建新项目时在Xcode template assistant中指定与iOS应用程序相同的捆绑包标识符。如果有现有项目,请在项目编辑器中编辑其捆绑包标识符


为上述答案添加更多要点:
在配置配置文件中,应用程序的捆绑ID必须唯一,并且项目必须分配给团队。可以在应用程序的目标常规选项卡中设置此id。为了创建默认的bundle ID,Xcode将公司标识符与从模板创建项目时输入的产品名称连接起来。字符串格式应为统一类型标识符(UTI),即字母数字字符(A-Z、A-Z、0-9)、连字符(-)和句点(.)

在您链接到的当前版本的Apple文档中,我找不到该引用的可能副本。(我检查了所有的捆绑编程指南页面。)看起来苹果的文档页面有所改进。我的回答反映了它在2017年年中的状态,当时Andre为OSX->macOS重命名编辑了它。