在我的iOS应用程序中,我有一些东西需要用户的权限。
例如:接收推送通知的权限。
我想每隔一段时间向这些用户请求启用权限,直到他们批准为止。我不想每次用户启动应用程序时都问这个问题。
我有打开应用程序设置的功能,用户可以在其中启用通知

extension UIApplication {
    class func openAppSettings() {
        if #available(iOS 8.0, *) {
            UIApplication.shared.openURL(URL(string: UIApplicationOpenSettingsURLString)!)
        }
    }
}

我考虑了存储上次权限请求的日期和每次应用程序启动的时间—检查上次用户被请求权限的天数。我不知道为什么,但对我来说似乎不优雅。
你能提出更优雅的解决方法吗?

最佳答案

优雅的方式:
在用户进行(应用内)购买后,再次请求许可,辩称您希望提醒未来的优惠
在用户进行(远程)订阅/预订后,再次请求权限,理由是您希望对事件/预订/交付状态发出警报
在用户触发一个需要1小时以上才能完成的(游戏中)操作后,再次请求权限,理由是您想提醒完成状态
如果你的应用程序没有提供购买任何东西的服务,没有触发任何具有实际影响的东西,也没有长时间的游戏会话,那么它可能会显示你没有对这些通知有意义的触发。

10-05 20:22
查看更多