何时使用显式应用ID与通配符ID?

时间:2009-11-07 07:31:49

标签: iphone objective-c cocoa-touch

创建显式App ID和Wild Card ID的确切优势是什么?我看到如果我们正在创建一个应用程序包,我们可以创建一个通配符App ID,否则显式ID是好的等等。但我有点困惑,想要了解更多关于这两种类型的确切优势的详细信息。

如果我首先获得免费版本(1.0),然后想要提交具有新功能(2.0)的相同应用程序的定价版本,那么应该采用哪种方式?

感谢。

5 个答案:

答案 0 :(得分:8)

如果您不打算使用推送通知和/或购买应用,则应选择通配符应用ID。在您的情况下,由于您计划从免费版本开始,然后要提供定价的新版本,您应该选择反映应用程序名称的显式应用程序ID,并在应用程序购买中使用以允许人们购买与您相关的内容定价版。这就是Apple现在推荐的内容。基本上,Apple的人们不希望我们开发轻便且价格合理的版本。他们想要一个可以通过App购买提供免费内容和定价内容的应用程序。

答案 1 :(得分:2)

对于大多数iPhone OS开发,建议使用Wildcard App IDs配置配置文件,因为可以使用单个Wildcard App ID来构建和安装大多数应用程序,包括iPhone参考库中提供的示例代码项目。通过在应用程序ID的标识符部分输入星号来创建通配符应用程序ID。通配符星号字符必须是App ID字符串中的最后一个字符。如果您使用通配符应用程序ID,请记住在Xcode项目中填写Bundle Identifier字段时,使用反向DNS格式用适当的字符串替换星号。

Example App ID: ABCDE12345.*

ABCDE12345捆绑种子ID (由Apple生成) *是App ID的Bundle Identifier。当您在Xcode项目中输入Bundle Identifier时,您需要使用反向DNS格式将星号替换为适当的字符串

Example App ID: ABCDE12345.com.foocompany.*

ABCDE12345捆绑种子ID (由Apple生成) com.foocompany。*是App ID的Bundle Identifier,Xcode项目中的Bundle Identifier必须以'com.foocompany。'开头。星号可以用你选择的字符串替换

第二种类型的应用ID称为显式应用ID 。此类型的App ID将配置文件限制为仅允许安装一个应用程序。需要显式应用程序ID才能在您的应用程序中启用某些iOS功能,例如In App Purchase和Apple Push Notification服务。通过在应用程序ID的标识符部分中输入特定字符串来创建显式应用程序ID。建议的做法是对App ID的Bundle Identifier部分使用反向DNS格式的字符串。

Example App ID: ABCDE12345.com.foocompany.appname

ABCDE12345捆绑种子ID (由Apple生成) com.foocompany.appname是App ID的Bundle Identifier,需要与应用程序的Bundle Identifier相同 如果您当前的应用使用通配符应用ID,并且想要更新您的应用以使用明确的应用ID,请参阅Technical Q&A QA1680, 'Updating from a wildcard App ID to an explicit App ID'.

重要提示:将应用默认捆绑包标识符中的"yourcompany"更改为公司的实际名称。当您尝试将应用程序上传到App Store时,这有助于避免出现问题。

答案 2 :(得分:1)

Wildcard App Id更易于使用。您不必为要测试的每个小应用程序创建新的应用程序ID和新的配置文件。显示应用ID是启用推送通知和应用内购买所必需的。如果您不需要两者,只需使用通配符并节省您的时间,而不是创建,下载,安装和分发多个配置文件(每个App ID最多三个 - 用于开发,adhoc和app store发行版!)。

答案 3 :(得分:1)

通配符必须适合“开发者”在您的设备上测试您的应用。 (应该在您的配置文件中及其关联的UDID)独家ID用于“分发”,我想是

答案 4 :(得分:-4)

根据我的理解,这个想法是带有通配符应用ID的应用可以共享数据。因此,如果您希望您的付费版本能够获取用户在使用免费版本时输入的设置,那么您需要这样做。也就是说,我从来没有使用过通配符选项,所以我没有使用过这方面的经验。