带有通配符包标识符的iPhone应用程序可以与外部附件框架一起使用吗?

时间:2010-07-20 18:05:54

标签: iphone iphone-accessory external-accessory

我正在尝试开发一款与“Made for iPhone”配件正确集成的iPhone应用程序。关于具有通配符Bundle Identifiers的应用程序是否能够正常工作,存在冲突的文档。我需要知道是否

  1. 当附件连接且未安装应用程序时,带有通配符标识符的应用程序将显示在应用商店中
  2. 应用程序将在连接附件时启动
  3. 制造商要求我们的捆绑种子ID和捆绑标识符,他们告诉我们应该是反向dns样式字符串,但它实际上是。*

    相互矛盾的信息......

    来自Apple的配置门户网站:

      

    App ID是称为“Bundle Seed ID”的唯一十个字符串和传统CF Bundle ID(或Bundle Identifier)的组合。您可以使用App ID的Bundle Seed ID部分在使用单个App ID构建的多个应用程序之间共享Keychain访问。此外,它还可以合并到您希望与iOS应用程序配对的任何外部硬件配件中。需要注册您的App ID才能使用Apple推送通知服务(APN)并注册应用程序以合并In App Purchases。

         

    App ID的Bundle Identifier部分可以用通配符(星号'*')代替,以便可以使用单个App ID来构建和安装多个应用程序。如果未使用通配符,则必须在Xcode中输入App ID的Bundle Identifier部分作为CF Bundle ID,以允许应用程序安装在您的设备上。您的App ID的Bundle Seed ID部分不需要输入Xcode。通配符应用程序ID不能与Apple推送通知服务或In App Purchase一起使用。

    来自gumbypp的App ID部分。具体来说:

      Apple表示:“App ID是iPhone开发和配置流程中不可或缺的一部分,它允许应用程序与Apple推送通知服务和/或外部硬件配件进行通信。”对于使用APNS,In App Purchase或外部硬件配件的每个应用程序,您将需要一个特定的App ID。所有其他应用都可以使用通配符应用ID。

    我在Google上搜索了这句话,但找不到它。

2 个答案:

答案 0 :(得分:1)

在您的配件中,在识别过程中,附件必须告诉iOS捆绑种子ID,xxxxxxxx.com.yourcompany.yourappname的xxxxxxxx部分。

iOS将使用此Bundle Seed ID搜索负责与此附件通信的应用程序。如果您的应用具有通配符标识符,则永远不会选择它。然后会显示一个对话框,询问用户是否应该前往App Store搜索所需的应用程序。

答案 1 :(得分:1)

我打电话给硬件制造商的技术支持,他们确认通配符应用程序ID没问题。我认为在构建/部署时,通配符App ID会解析为显式的App ID。

我能说的唯一限制是无法使用推送通知和游戏中心。