繁体   English   中英

如何在我的应用未运行时处理推送通知

[英]how can I handle push notification when my app is not running

如何在我的应用程序未运行时处理推送通知我正在开发ios3。请帮助

一个简短的例子:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    

    NSDictionary *tmpDic = [launchOptions objectForKey:@"UIApplicationLaunchOptionsRemoteNotificationKey"];

    //if tmpDic is not nil, then your app is launched due to an APNs push, therefore check this NSDictionary for further information
    if (tmpDic != nil) {
        NSLog(@" - launch options dict has something ");
        NSLog(@" - badge number is %@ ", [[tmpDic objectForKey:@"aps"] objectForKey:@"badge"]);
        NSLog(@" - ");
    } 

编辑:关于您收到的NSDictionary,来自Apple的官方文档:

您可以访问aps词典的内容 - 尽管在大多数情况下您不需要使用以下键:

  1. alert-该值可以是警报消息的字符串,也可以是包含两个键的字典:body和show-view。 前者的值是警报消息,后者是布尔值(false或true)。 如果为false,则不显示警报的“查看”按钮。 默认设置是显示“查看”按钮,如果用户点击该按钮,则启动该应用程序。
  2. badge - 一个数字,指示从提供程序下载的数据项的数量。 此编号将显示在应用程序图标上。 缺少徽章属性表示应删除当前标记图标的任何数字。
  3. sound-应用程序包中声音文件的名称,用作警报声音。 如果指定“default”,则应播放默认声音。

字典还可以具有由提供者根据JSON模式定义的自定义数据。 应该在与aps字典相同的级别指定自定义数据的属性。 但是,自定义属性不应用于海量数据传输,因为每个通知(256字节)存在严格的大小限制,并且无法保证传递。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM