【问题标题】:Set rating right in the App (Swift 3, iOS 10.3)在应用程序中设置评分(Swift 3、iOS 10.3)
【发布时间】:2020-05-21 21:01:15
【问题描述】:

我的应用中有一个菜单按钮。如果用户单击此按钮,他会看到 UIAlertView,其中包含指向 App Store 的应用链接。

代码如下:

@IBAction func navButton(_ sender: AnyObject) {

let alertController = UIAlertController(title: "Menu", message: "Thanks for using our app!", preferredStyle: .alert)
alertController.addAction(UIAlertAction(title: "Rate Us on the App Store", style: .default, handler: { (action: UIAlertAction) in
print("Send user to the App Store App Page")

let url  = URL(string: "itms-apps://itunes.apple.com/app/id")
     if UIApplication.shared.canOpenURL(url!) == true  {
     UIApplication.shared.openURL(url!)
}  
}))

我知道在 iOS 10.3 中,有机会在应用程序中设置评级。我应该更改什么,以便当用户单击 UIAlertView 中的链接时,他可以在应用程序中设置评分?

我在 Apple Developer 网站 (https://developer.apple.com/reference/storekit/skstorereviewcontroller) 上找到了一些信息,但我不知道如何在我的应用中执行此操作。

【问题讨论】:

    标签: ios swift xcode


    【解决方案1】:

    这是一个基于查看文档的类函数。

    SKStore​Review​Controller.requestReview()
    

    它还指出,您不应根据用户按下按钮或任何其他类型的操作来调用此函数,因为不能保证调用此函数。如果您指出他们将要显示评论模式,然后什么都没有出现,那将是一个糟糕的用户体验。

    如果您在应用中使用这个新选项,似乎最好的选择是将其放置在不会中断用户执行的任何重要操作的地方,并让框架完成工作。

    您可以使用用户不知道的条件来选择何时调用该函数,即启动应用 x 次、连续使用 x 天等。

    编辑:替代

    如果您想更好地控制请求评论的能力,您可以继续旧方法并将以下内容附加到您的商店 URL 以将它们直接带到评论页面。

    action=write-review

    guard let url = URL(string: "appstoreURLString&action=write-review") else { return }
    UIApplication.shared.open(url, options: [:], completionHandler: nil)
    

    【讨论】:

    • 非常感谢!抱歉回复晚了。
    • 附加细节...确保导入 StoreKit :)
    猜你喜欢
    • 1970-01-01
    • 2017-09-26
    • 1970-01-01
    • 2017-04-06
    • 1970-01-01
    • 1970-01-01
    • 2017-10-13
    • 2017-08-29
    • 1970-01-01
    相关资源
    最近更新 更多