如何自定义推送通知的iOS权限对话框的弹出时间

Posted

技术标签:

【中文标题】如何自定义推送通知的iOS权限对话框的弹出时间【英文标题】:How to customize the popup time of iOS permission dialog for push notifications 【发布时间】:2014-04-14 09:24:26 【问题描述】:

我知道,只要应用程序启用了推送,权限对话框本身就不可能被自定义或禁用。但是我想知道它的弹出时间是否可以推迟。

我已经看到Candy Crush Saga 这样做了。

权限对话框不会出现,直到您达到某个级别时才会弹出自定义对话框并询问您是否愿意接收来自Candy Crush Saga 的通知,如果您按下确定,则会出现用于推送通知的 ios 标准权限对话框。

【问题讨论】:

【参考方案1】:

当您第一次调用registerForRemoteNotificationTypes: 时,将显示对话框。所以,在需要之前不要调用它。

另外,考虑询问用户/告知用户通过接受和询问他们是否感兴趣会获得什么。如果是,请使用用户默认值记录并在应用程序委托中调用 registerForRemoteNotificationTypes: 之前检查它(对于每次启动)。如果用户满意,则在用户默认值中设置该标志并首次调用registerForRemoteNotificationTypes:

【讨论】:

我想到了一件事。是不是说如果我从不调用registerForRemoteNotificationTypes:方法,那么我的App就收不到推送通知了? 真可惜...我不得不说...当您有一个客户坚持不应该弹出任何警报并且老板坚持该应用程序应该支持 APNS 推送通知...跨度> 不丢人,必须征求用户的许可。客户和管理层需要了解所需用户交互的现实情况及其决策的后果。您可以将警报的显示延迟到应用程序的合适时间,但在显示并获得批准之前您无法获得 APNS。

以上是关于如何自定义推送通知的iOS权限对话框的弹出时间的主要内容,如果未能解决你的问题,请参考以下文章

友盟-推送-IOS-可以自定义App在前台接受到消息的弹出框么?

iOS 推送通知自定义警报

WorkLight 触发 iOS 推送通知权限对话框

单击推送通知后,当应用程序进入前台时如何显示自定义对话框

修改推送通知的权限请求对话框

iOS9.3.5如何注册自定义推送通知?