如何测试iOS“评价我的应用”功能

时间:2016-02-24 23:44:22

标签: ios app-store

我正在尝试将“评估我的应用”功能添加到尚未发布的iOS应用中。

我有一个简单的功能,如下所示:

 let alert = UIAlertController(title: "Rate Us", message: "Thanks for using <APP NAME>", preferredStyle: UIAlertControllerStyle.Alert)
    alert.addAction(UIAlertAction(title: "Rate <APP NAME>", style: UIAlertActionStyle.Default, handler: { alertAction in
        UIApplication.sharedApplication().openURL(NSURL(string : "itms-apps://itunes.apple.com/app/<ITUNES CONNECT APP ID>")!)
        alert.dismissViewControllerAnimated(true, completion: nil)
    }))
    alert.addAction(UIAlertAction(title: "No Thanks", style: UIAlertActionStyle.Default, handler: { alertAction in
        NSUserDefaults.standardUserDefaults().setBool(true, forKey: "neverRate")
        alert.dismissViewControllerAnimated(true, completion: nil)
    }))
    alert.addAction(UIAlertAction(title: "Maybe Later", style: UIAlertActionStyle.Default, handler: { alertAction in
        alert.dismissViewControllerAnimated(true, completion: nil)
    }))
    self.presentViewController(alert, animated: true, completion: nil)

如何测试这是否有效?

我的应用尚未提交,我想确保代码正常运行。

我收到警报,当我点击“评价我们”时,它会将我重定向到应用程序商店:

App Store Image Shown

控制台出错:

2016-02-24 18:38:00.302 <APP NAME>[2212:808041] _BSMachError: (os/kern) invalid capability (20)
2016-02-24 18:38:00.305 <APP NAME>[2212:808256] _BSMachError: (os/kern) invalid name (15)

我不确定这是否意味着该功能不起作用。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:3)

有一个很好的图书馆,可以满足您的需求。您可以使用iRate库。所有细节都可以从以下链接中找到

https://github.com/nicklockwood/iRate

库会检查用户是否已查看特定版本,如果没有,则会提示用户对应用进行评级。可以配置提示警报的时间段。此外,如果您在商店中有实时应用程序,则可以在开发时测试该功能。

我希望这会有所帮助......

答案 1 :(得分:0)

我检查了你的代码&amp;没错。您传递的URL也是正确的。它可能会发生,但它不适用于某些操作系统版本或某些特定设备。

因此,在这种情况下,只需尝试使用此网址代替您的网址:

itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=YOUR+AppID

这是尝试过的&amp;在我的应用程序中测试过。

注意:

  • 如果您想进行测试而不仅仅是放置任何实时应用程序的AppID。完成测试后,您只需要传递App的AppID即可。多数民众赞成!

希望它对你有用。