itms-services // action=purchaseIntent 没有打开应用

Posted

技术标签:

【中文标题】itms-services // action=purchaseIntent 没有打开应用【英文标题】:itms-services // action=purchaseIntent not opening the App 【发布时间】:2017-08-08 11:47:31 【问题描述】:

ios11 上,Apple 推出了可以从 AppStore 发起的 IAP 购买。为了测试这一点,他们在WWDC17 Whats new in StoreKit video 中提供了以下 URL 方案供使用:

itms-services://?action=purchaseIntent&bundleId=com.example.app&productIdentifier=product_name

现在我已经在我们的开发应用程序(IAP 项目不在商店)和生产应用程序(IAP 项目在商店)尝试了几次。有没有人有这个工作?是否有一些我遗漏的特殊步骤?

编辑:结果就像我输入 URL 一样愚蠢。我写的不是bunldeId=,而是bundleID=。因此,请务必小心,因为 URL 区分大小写。幸运的是,其他人犯了完全相同的错字并找到了解决方案:https://forums.developer.apple.com/thread/83709

【问题讨论】:

【参考方案1】:

我也遇到了麻烦,让它为我工作的诀窍是输入完整的 productIdentifier,如 com.company.app.pid。 Apple 的文档非常具有误导性......

【讨论】:

【参考方案2】:

我通过替换这些值(bunldeIdproductIdentifier)得到了它:

itms-services://?action=purchaseIntent&bundleId=com.app&productIdentifier=com.app.product.identifier

bundleId (com.app) 可以在您的 Xcode 项目中找到:在 .pbxproj 文件中,查找 General > Bundle Identifier productIdentifier (com.app.product.identifier) 可以在App store connect > Features > In-App purchases > Product ID中找到 请注意,链接区分大小写。

【讨论】:

以上是关于itms-services // action=purchaseIntent 没有打开应用的主要内容,如果未能解决你的问题,请参考以下文章

itms-services 协议未检测为链接 - iOS 8

iOS 分发 - plist 的 itms-services 协议链接中的参数

iOS8 Beta Ad-Hoc 应用下载 (itms-services)

在 App Store 上的应用中使用 itms-services 链接

Mac 本地搭建服务器实现itms-services方式安装ipa(自制证书)

Apple 临时分发问题