我需要有关聊天应用程序推送通知的帮助。我对推送通知和所有内容都没有任何想法。在ios中使用聊天或其他任何内容时显示通知。请帮助我出。
答案 0 :(得分:4)
试试这个。它对我有用。
我必须向您解释推送通知
1)推送通知概述
1)应用程序启用推送通知。用户必须确认他希望收到这些通知。
2)应用程序收到“设备令牌”。您可以将设备令牌视为推送通知的地址。
3)应用程序将设备令牌发送到您的服务器。
4)当您的应用程序感兴趣的内容发生时,服务器会向Apple推送通知服务或 APNS 发送推送通知。
5)APNS将推送通知发送给用户的设备。
2)推送通知编码
在AppDelegate.m中调用委托方法。
1)已注册推送通知
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
{
//-- Set Notification
if ([application respondsToSelector:@selector(isRegisteredForRemoteNotifications)])
{
// iOS 8 Notifications
[application registerUserNotificationSettings:[UIUserNotificationSettings settingsForTypes:(UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge) categories:nil]];
[application registerForRemoteNotifications];
}
else
{
// iOS < 8 Notifications
[application registerForRemoteNotificationTypes:
(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound)];
}
//--- your custom code
return YES;
}
2)对于设备令牌
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
NSString *token = [[deviceToken description] stringByTrimmingCharactersInSet: [NSCharacterSet characterSetWithCharactersInString:@"<>"]];
token = [token stringByReplacingOccurrencesOfString:@" " withString:@""];
NSLog(@"%@", token);
}
3)接收推送通知
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
{
NSLog(@"Received notification: %@", userInfo);
}
按照上述推送通知流程进行操作,并参阅本教程了解详细信息 Push Notification working tutorial
3)使用推送通知进行聊天应用
对于聊天应用程序,您可以使用自己的服务器或使用第三方 API ,例如 QiuckBlox 请参阅此 SDK 以获取聊天应用程序。 https://github.com/QuickBlox/quickblox-ios-sdk/tree/master/sample-chat
另请参阅聊天应用程序教程。 http://quickblox.com/developers/SimpleSample-chat_users-ios