将通配符包标识符转换为单个 ID
我在应用程序商店中有一个使用通配符包标识符的应用程序。我想实现应用内购买,这需要非通配符ID。如何将现有应用的通配符 ID 转换为静态 ID 以进行应用内购买和推送通知?
I have an app in the app store that uses a wildcard bundle identifier. I want to implement in-app purchashing , which requires a non wildcard ID. How do I convert the wildcard ID of an existing app to a static ID for in-app purchase and push notification?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
应用程序的捆绑标识符在更新之间必须始终保持相同,但 AppID 实际上可以不同。因此,您需要做的就是创建一个新的 AppID,该 AppID 使用与原始应用程序相同的包标识符,而不是通配符。
使用通配符的应用程序仍然需要普通的包标识符。通配符 AppID 允许您使用任何您喜欢的包标识符,但它仍然需要一个。
http://developer.apple.com/library/ios/#qa /qa1713/_index.html
https://developer.apple.com/library/ios/#technotes /tn2259/_index.html
The bundle identifier for an app must always remain the same between updates, but the AppID can actually be different. So all you need to do is create a new AppID that used the same bundle identifier as the original app instead of a wild card.
Apps that use a wildcard still need a normal bundle identifier. The wildcard AppID lets you use any bundle identifier you like, but it still needs one.
http://developer.apple.com/library/ios/#qa/qa1713/_index.html
https://developer.apple.com/library/ios/#technotes/tn2259/_index.html
您实际上不需要更改应用程序的 ID,只需为已发布的特定 ID 创建一个新的配置文件,然后使用新的代码签名证书对应用程序的升级版本进行签名。
也就是说,如果旧应用程序的捆绑包 ID 为 com.yourcompany.myapp,并使用 com.yourcompany.* 证书进行签名,则只需创建一个新的 com.yourcompany.myapp 证书,但保留应用程序的捆绑包标识符与之前相同。
You don't actually need to change the app's id, you just need to make a new provisioning file for the specific id you've already shipped, and then sign the upgraded version of your app with the new code-signing certificate.
That is, if the old app's bundle id was com.yourcompany.myapp, and signed with a com.yourcompany.* certificate, you just make a new com.yourcompany.myapp certificate, but you leave the app's bundle identifier the same as before.
简而言之,您可以将已提交的使用通配符捆绑 ID 的应用程序转换为唯一的应用程序 ID。但是,如果这样做,您将会遇到一些问题,或者从用户的角度来看会产生影响。
Apple 使用捆绑包 ID 来识别应用程序商店中的应用程序(因此称为“应用程序 ID”:-))。
您面临的问题是您的应用程序已经在 App Store 上发布,并且可能有用户下载。现在,当您使用新的唯一应用程序 ID 更新应用程序时,已下载您的应用程序(使用旧应用程序 ID)的用户将无法获得更新(使用新的唯一应用程序 ID)。
发生这种情况的原因是您的应用程序中现在有一个新的捆绑包 ID。与旧的 App ID 没有任何连接。由于应用程序只能有一个对应用程序 ID 的引用。在整个生产版本和应用程序更新过程中保持应用程序 ID 相同通常是一个好主意。
如果您为您的应用程序创建一个唯一的 ID(您可以)。下载新更新的应用程序的用户一切都会很好,但对于在更新之前下载您的应用程序的用户来说。好吧...您现在已经正式为这些用户创建了一个应用程序孤儿,这些用户将永远不会获得该更新,因为它与应用程序 ID 不匹配。
只要有办法解决这个问题。我不确定是否有。我只能建议您始终为您未来的生产发布应用程序创建唯一的应用程序 ID。
为了创建一个允许您使用Apple 的推送通知服务和 Apple 的应用内购买的应用程序。您需要创建一个应用程序 ID,该应用程序 ID 是唯一的应用程序 ID。 我始终建议您的应用程序使用唯一的 ID。这将为您在以后的道路上省去很多麻烦。
为了澄清起见,以下是唯一 ID 的
In short you can convert an already submitted app that uses a wildcard bundle ID to a unique App ID. However, you're going to have some issue(s), or fallout from a user standpoint if you do so.
Apple uses bundle ID's to identify apps on the app store (hence the term App ID :-)).
The problem that you're facing is that your app is already up on the App Store with possible user downloads. Now when you update your application with the new unique App ID, the users that have already downloaded your application (with the old App ID) will not get the update (with the new unique App ID).
The reason why this happens is that you now have a new bundle ID in your application. With no connection to the old App ID. Since apps can only have one reference to an App ID. It's usually a good idea to keep an App ID the same throughout the production release, and updates of your application.
If you create a unique ID for your App (which you can). Users that download the new updated app everything will be all fine and dandy, but for the users that downloaded your app before the update. Well... you have now officially created an app orphan for those users, these users will never get that update since it doesn't match the App ID.
As far as there being a way around this. I'm not sure if there is. I can only suggest that you ALWAYS create unique App ID's for your future production release applications.
In order to create an application that allows you to use Apple's Push Notification service, and Apple's In App Purchase. You will need to create an App ID that is a unique App ID. I would always recommend that you use unique ID's for your applications. It will save you a ton of headaches later on down the road.
For clarification purposes the following are unique ID's