IOS - 在后台收听whatsapp事件通知

时间:2014-09-29 20:17:28

标签: ios xcode6 nsnotificationcenter whatsapp

每当手机收到来自 whatsapp 的消息时,我都会尝试触发事件。我不确定这是否可行。这就是我到目前为止在后台运行线程所做的工作。

viewDidLoad中:

[self performSelector:@selector(MyFunction)]

方式:

-(void)MyFunction {

    sleep(3);
    NSLog(@"Hello World!");
    [self performSelector:@selector(func1)];
}

现在我正在 MyFunction 方法中使用此代码等待传入的 whatsapp 消息:

...
...og(@"Hello World!");
NSNotificationCenter *notifyCenter = [NSNotificationCenter defaultCenter];
    [notifyCenter addObserverForName:nil
                              object:nil
                               queue:nil
                          usingBlock:^(NSNotification* notification){
                              // Explore notification
                              NSLog(@"Notification found with:"
                                    "\r\n     name:     %@"
                                    "\r\n     object:   %@"
                                    "\r\n     userInfo: %@",
                                    [notification name],
                                    [notification object],
                                    [notification userInfo]);

}];

但最后一段代码不起作用,不打印任何东西。也许我没有正确使用该方法,或者可能无法收听 whatsapp 传入的消息。以前有人经历过这个吗?因为这里需要帮助。

1 个答案:

答案 0 :(得分:1)

NSNotificationCenter允许应用程序中的对象相互发送通知(您还可以从iOS接收一些通知,例如当您的应用进入后台或前景时),但这与显示的通知无关给用户。

在iOS上,应用程序无法访问用户通知数据。唯一的例外是当用户点击与您的应用相关联的本地或推送通知时,您会在UIApplicationDelegate课程中收到该通知。

这意味着在WhatsApp上可以接收有关WhatsApp消息的通知,但您无法做您想做的事情。