如何检查用户之前是不是在 iOS 中查看过推送通知权限警报视图?
Posted
技术标签:
【中文标题】如何检查用户之前是不是在 iOS 中查看过推送通知权限警报视图?【英文标题】:How to check whether user has seen the push notification permissions alert view before in iOS?如何检查用户之前是否在 iOS 中查看过推送通知权限警报视图? 【发布时间】:2015-03-26 19:00:34 【问题描述】:我想在显示推送通知权限警报视图之前,在应用启动时向用户显示一条消息。为了确定是否应该显示消息,我需要知道用户之前是否看过推送通知权限警报视图。
【问题讨论】:
【参考方案1】:您可以使用 NSUserDefaults。
在您调用 regusterNotifications: 后显示权限。
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"hasShown"];
[[NSUserDefaults standardUserDefaults] synchronize];
检查是否显示,假设 hasShown 的布尔值为 Yes。
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"hasShown"])
// user has seen before
请注意,这仅检查之前是否已发送权限请求。这不会验证您的推送通知是否仍然为给定的应用程序激活。
【讨论】:
这样做的问题是,如果您将其作为对现有应用程序的更新,它将不准确。 @Marty - 想法:作为密钥,而不是@"hasShown"
你可以这样做:[NSString stringWithFormat: @"shownIn-%@", [[NSBundle mainBundle] objectForInfoDictionaryKey: @"CFBundleShortVersionString"]]
以上是关于如何检查用户之前是不是在 iOS 中查看过推送通知权限警报视图?的主要内容,如果未能解决你的问题,请参考以下文章