我的应用程序已经批准了一段时间并使用了*配置文件,因此我创建了类似的内容:
com.mydomain.MyApp
但是现在我有必要添加推送通知,我不能因为我使用的是*配置文件,它需要有自己的应用ID和个人资料。
如何在不破坏任何内容的情况下实现应用更新
答案 0 :(得分:23)
应用的捆绑标识符在更新之间必须始终保持相同,但AppID实际上可能不同。所以你需要做的就是创建一个新的AppID,它使用与原始应用程序相同的包标识符而不是通配符。
使用通配符的应用仍需要普通的捆绑包标识符。通配符AppID允许您使用任何您喜欢的包标识符,但它仍然需要一个。
以前有一个Apple article:
但它已不再在线提供但是,an archive可用。
答案 1 :(得分:11)
如果您要为其发布更新,则无法更改已发布应用的CFBundleIdentifier,App Store会在您上传时自动拒绝该应用。所以......
我需要在先前使用通配符App ID开发的应用上启用iAd。这是我做的:
我的应用当前使用的通配符应用ID为<AlphaNumeric>.*
,我的应用的CFBundleIdentifier
为com.companyname.mygame
。
创建了新的应用ID <AlphaNumeric>.com.companyname.mygame
。
创建了包含新App ID的新开发和分发配置文件。
将新的配置文件下载到Xcode和我的设备。
然后我能够使用新的非通配符分发配置文件编译应用程序,这意味着在上传时我可以启用iAd(或推送给你)。 CFBundleIdentifier没有更改,因此新编辑显示为对现有应用程序的更新。
我可以确认这个过程没有问题。
答案 2 :(得分:1)
在名为“技术说明TN2259”的文档中的常见问题解答中,“将应用程序内购买添加到iOS和Mac应用程序”,这就是
问题:我的iOS应用程序目前使用配置文件进行签名 使用通配符应用程序ID。如何启用我的App ID以支持 在应用程序内购买?
答案:阅读“创建和配置应用程序ID”部分 iOS团队管理指南,了解如何启用您的应用程序 用于支持应用程序内购买的ID。
链接点here,其中有一节名为“更新您的应用以包含APNS,iCloud,应用内购买或游戏中心需要明确的应用ID”
那就是说,我还不知道应用程序在什么时候采用了新的App ID。是在您上传审核之前,还是在获得批准之后?我现在正在解决这个问题,所以我很快就可以添加这个答案。
编辑:明确的应用ID只影响您正在测试的软件,并且基本上与iTunes Connect无关。这意味着,如果您正在测试应用内购买,那么正在运行的软件(您的应用)必须具有基于应用特定的证书的配置文件。 iTunes Connect中发生的事情完全无关紧要。