在 UIAlert 视图中显示推送通知文本

Posted

技术标签:

【中文标题】在 UIAlert 视图中显示推送通知文本【英文标题】:display Push notification text in a UIAlert View 【发布时间】:2014-11-23 21:55:11 【问题描述】:

我正在使用 Parse 向我的应用程序发送推送通知。我想要的是,当用户从锁定屏幕滑动通知或从主屏幕点击它时,它会打开应用程序并在 UIAlert 视图中显示推送通知的文本。

我想它会插入应用程序委托的 didfinishlaunchingwithoptions 方法,但我真的不知道如何提取警报文本。

任何建议将不胜感激。

所以下面是我显示警报的代码 - 它正在工作,但它显示完整的 JSON 消息 - 当我尝试使用 objectForKey:@"alert 语句来尝试仅提取“警报”部分时推送通知,警报的消息部分不显示任何内容。

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo 
    [PFPush handlePush:userInfo];
    pushText = [userInfo objectForKey:@"alert"];
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"News", "")
                                                    message:pushText
                                                   delegate:nil
                                          cancelButtonTitle:@"Ok"
                                          otherButtonTitles: nil];
    [alert show];





【问题讨论】:

【参考方案1】:

您可以将此代码放入 didFinishLaunchingWithOptions 部分,然后在 UIAlertView 中显示 pushText 变量。

NSDictionary *notifKey = launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey];

if (notifKey)

    pushText = [notifKey objectForKey:@"alert"];

【讨论】:

以上是关于在 UIAlert 视图中显示推送通知文本的主要内容,如果未能解决你的问题,请参考以下文章

如果被短信、推送通知或电池电量不足等 uialert 中断,如何自动继续录制

UIAlert 上的用户交互

如何检查用户之前是不是在 iOS 中查看过推送通知权限警报视图?

推送通知仅显示应用程序徽标而没有任何文本

iOS - 收到推送通知后显示视图

保存推送通知并在 UITableView 中显示