如果他们仍然拒绝,请偶尔询问iOS权限

时间:2017-09-20 11:37:00

标签: ios iphone swift permissions ios-permissions

在我的iOS应用中,我有一些需要用户权限的东西。 例如:接收推送通知的权限。

我想让这些用户偶尔启用权限,直到他们批准它为止。我不想每次用户启动应用程序时询问。

我有一个功能可以打开用户可以启用通知的应用设置

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

我考虑过存储上次权限请求的日期以及每次应用启动时 - 检查上次用户被要求获取权限的天数。我不知道为什么,但对我来说似乎并不优雅。

请您提出更优雅的解决方法吗?

1 个答案:

答案 0 :(得分:1)

优雅的方式:

  • 在用户进行(应用内)购买后立即再次申请许可,并声称您要提醒未来优惠

  • 在用户进行(远程)订阅/预订后立即再次请求许可,声称您要提醒事件/预订/交付状态

  • 在用户触发(游戏中)操作后立即再次请求获得许可,该操作将需要超过1小时才能完成,并声称您要提醒完成状态

如果您的应用不提供购买任何内容的服务,不触发任何具有实际影响的内容,并且没有长时间的游戏会话,那么它可能会显示您没有有意义的触发这些通知。