使用 Swift 取消自动续订订阅

问题描述 投票:0回答:6

我想创建一个按钮,用户可以在其中取消自动续订订阅(或重定向到 App Store)。

用户无需先完成整个购买流程是否可行?如果是的话,你会怎么做?

ios swift in-app-purchase storekit renewal
6个回答
50
投票

2019 年 12 月

根据 Apple 的处理订阅计费文档,现在正确的 URL 是 https://apps.apple.com/account/subscriptions

所以只需使用:

UIApplication.shared.open(URL(string: "https://apps.apple.com/account/subscriptions")!)

36
投票

来自 Apple 应用内购买编程指南 -

您无需编写自己的订阅管理 UI 代码, 应用程序可以打开以下网址:

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")!)

3
投票

正如文档中提到的: https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Chapters/Subscriptions.html#//apple_ref/doc/uid/TP40008267-CH7-SW19

所以对于 Swift 3/4 只需使用这个

UIApplication.shared.openURL(URL(string: "https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions")!)

0
投票

iOS 10 及以上版本

UIApplication.shared.open(URL(string: "https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions")!, options: [:], completionHandler: nil)

0
投票

Mac操作系统:

if let url = URL(string: "https://apps.apple.com/account/subscriptions") {
    NSWorkspace.shared.open(url)
}

-2
投票

2021 年 4 月

根据Apple文档,URL已更新为

https://apps.apple.com/account/subscriptions

因此可以使用以下代码将用户重定向到管理订阅页面。

DispatchQueue.main.async {
      UIApplication.shared.open(URL(string: "https://apps.apple.com/account/subscriptions")!, options: [:], completionHandler: nil)
    }
© www.soinside.com 2019 - 2024. All rights reserved.