常见的问题

本地通知的实现
最后更新 3 年以前

您好:
先解释下什么是本地通知以及为什么要用它。
本地通通知,就是iOS APP切换到后台,但进程还没有被杀死的时候,开发者可以通过代码在应用外部弹出一个类似APNs的提醒通知,提醒的内容也完全是由开发者设置的参数来确定的。

环信什么时候需要用本地通知:
环信使用长连接技术,在APP后台的时候,长连接还存在,服务器就会认为客户端仍然在线,此时就不会有APNs的产生。但是对于用户来说,此时APP已经在后台了,有新消息过来是需要弹出提示的。此时就需要用本地通知来解决了。

如何判断需要本地通知?
在收到环信消息回调的时候,先判断设备是前台还是后台,如果是后台,就需要实现本地通知
- (void)messagesDidReceive:(NSArray *)aMessages
{
UIApplicationState state = [[UIApplication sharedApplication] applicationState];
if (state == UIApplicationStateBackground) { // 判断app是否是后台状态
// 如果是后台,就需要实现本地通知
}
}

本地通知的具体代码:
您可以参考
http://www.jianshu.com/p/064207461bb6



请稍候!

请稍候...它将需要一点时间 !