【问题标题】:How to check whether user has seen the push notification permissions alert view before in iOS?如何检查用户之前是否在 iOS 中查看过推送通知权限警报视图?
【发布时间】:2015-03-26 19:00:34
【问题描述】:

我想在显示推送通知权限警报视图之前,在应用启动时向用户显示一条消息。为了确定是否应该显示消息,我需要知道用户之前是否看过推送通知权限警报视图。

【问题讨论】:

    标签: ios iphone ios7 ios8 push-notification


    【解决方案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"]]
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-05
    • 2019-04-21
    • 2021-09-23
    • 2020-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多