我想创建一个按钮,用户可以在其中取消自动续订订阅(或重定向到 App Store)。
如果用户不必先完成整个购买过程,这是否可能?如果是,你会怎么做?
我想创建一个按钮,用户可以在其中取消自动续订订阅(或重定向到 App Store)。
如果用户不必先完成整个购买过程,这是否可能?如果是,你会怎么做?
2019 年 12 月
根据Apple 的处理订阅计费文档,正确的 URL 现在是https://apps.apple.com/account/subscriptions。
所以只需使用:
UIApplication.shared.open(URL(string: "https://apps.apple.com/account/subscriptions")!)
来自 Apple In-App Purchase Programming Guide -
您的应用无需编写自己的订阅管理 UI,而是可以打开以下 URL:
https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions 打开此 URL 会启动 iTunes 或 iTunes Store,然后显示“管理订阅”页面。
因此,只需创建一个启动该 URL 的按钮。
UIApplication.shared.openURL(URL(string: "https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions")!)
所以对于 Swift 3/4 只需使用这个
UIApplication.shared.openURL(URL(string: "https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions")!)
iOS 10 及更高版本
UIApplication.shared.open(URL(string: "https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions")!, options: [:], completionHandler: nil)
2021 年 4 月
根据Apple Document,该 URL 已更新为
https://apps.apple.com/account/subscriptions
因此,可以使用以下代码将用户重定向到管理订阅页面。
DispatchQueue.main.async {
UIApplication.shared.open(URL(string: "https://apps.apple.com/account/subscriptions")!, options: [:], completionHandler: nil)
}