我阅读了一些教程,还为我的聊天应用程序检查了一些Socket编程示例,但是我注意到一件事,如果我们仍在使用套接字编程,则需要在线程中一次又一次地访问Web服务以从服务器获取新消息。现在我的问题是:如果我们需要一次又一次地访问Web服务,那么使用套接字执行此操作有什么需要?通过一次又一次地点击Web服务,我们可以直接从服务器获取聊天消息。
编辑:我做一个聊天应用程序只是一次又一次地访问Web服务以获取新消息,我正在使用Intent服务。它的工作正常,但我知道这不是聊天的标准方法。
当我的应用程序进入后台时,将 自动调用applicationDidEnterBackground,并在此方法中触发本地通知.但didReceiveLocalNotification:方法未被调用
- (void)applicationDidEnterBackground:(UIApplication *)application {
UIApplication *app = [UIApplication sharedApplication];
bgTask = [app beginBackgroundTaskWithExpirationHandler:^{
bgTask = UIBackgroundTaskInvalid;
}];
UILocalNotification* localNotification = [[UILocalNotification alloc] init];
localNotification.timeZone = [NSTimeZone defaultTimeZone];
localNotification.fireDate = [NSDate date];
localNotification.alertBody = textString;
localNotification.alertAction = @"View";
localNotification.soundName = UILocalNotificationDefaultSoundName;
localNotification.applicationIconBadgeNumber = 1;
[[UIApplication sharedApplication] presentLocalNotificationNow:localNotification];
}
Run Code Online (Sandbox Code Playgroud)