iOS消息推送
2016-01-05 15:53
513 查看
源码:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary
*)launchOptions {
//当程序处于关闭状态收到推送消息时,点击图标会调用
//
处理推送
if (launchOptions !=
nil) {
NSDictionary *dictionary = [launchOptionsobjectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
if (dictionary !=
nil) {
//
这个字典就是推送消息的userInfo
NSLog(@"push
推送的消息---- %@",dictionary);
}
}
if ([application
respondsToSelector:@selector(isRegisteredForRemoteNotifications)])
{
// iOS 8 Notifications
[application registerUserNotificationSettings:[UIUserNotificationSettingssettingsForTypes:(UIUserNotificationTypeSound
|UIUserNotificationTypeAlert | UIUserNotificationTypeBadge)categories:nil]];
[application registerForRemoteNotifications];
}
else
{
// iOS < 8 Notifications
[application registerForRemoteNotificationTypes:
(UIRemoteNotificationTypeBadge |UIRemoteNotificationTypeAlert |
UIRemoteNotificationTypeSound)];
}
return
YES;
}
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
NSString *token = [[[[NSStringstringWithFormat:@"%@",deviceToken]stringByReplacingOccurrencesOfString:@"
"withString:@""]stringByReplacingOccurrencesOfString:@"<"withString:@""]stringByReplacingOccurrencesOfString:@">"withString:@""];
NSLog(@"token---%@",token);
NSUserDefaults *user_defaults = [NSUserDefaultsstandardUserDefaults];
[user_defaultssetObject:token
forKey:@"DEVICETOKEN"];
[user_defaultssynchronize];
NSLog(@"My token is: %@", deviceToken);
NSString *devID= [[NSStringalloc]initWithFormat:@"%@",
deviceToken];
}
- (void)application:(UIApplication*)application didFailToRegisterForRemoteNotificationsWithError:(NSError*)error
{
NSLog(@"Failed to get token, error: %@", error);
}
//处理收到的消息推送
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary
*)userInfo
{
NSLog(@"Receive remote notification : %@",userInfo);
UIAlertView *alert =
[[UIAlertViewalloc]
initWithTitle:@"温馨提示"
message:[[NSStringalloc]initWithFormat:@"%@",userInfo]
delegate:nil
cancelButtonTitle:@"确定"
otherButtonTitles:nil];
[alertshow];
}
转载请注明出处:http://blog.csdn.net/sevenquan
iOS开发社区群:496146057
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary
*)launchOptions {
//当程序处于关闭状态收到推送消息时,点击图标会调用
//
处理推送
if (launchOptions !=
nil) {
NSDictionary *dictionary = [launchOptionsobjectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
if (dictionary !=
nil) {
//
这个字典就是推送消息的userInfo
NSLog(@"push
推送的消息---- %@",dictionary);
}
}
if ([application
respondsToSelector:@selector(isRegisteredForRemoteNotifications)])
{
// iOS 8 Notifications
[application registerUserNotificationSettings:[UIUserNotificationSettingssettingsForTypes:(UIUserNotificationTypeSound
|UIUserNotificationTypeAlert | UIUserNotificationTypeBadge)categories:nil]];
[application registerForRemoteNotifications];
}
else
{
// iOS < 8 Notifications
[application registerForRemoteNotificationTypes:
(UIRemoteNotificationTypeBadge |UIRemoteNotificationTypeAlert |
UIRemoteNotificationTypeSound)];
}
return
YES;
}
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
NSString *token = [[[[NSStringstringWithFormat:@"%@",deviceToken]stringByReplacingOccurrencesOfString:@"
"withString:@""]stringByReplacingOccurrencesOfString:@"<"withString:@""]stringByReplacingOccurrencesOfString:@">"withString:@""];
NSLog(@"token---%@",token);
NSUserDefaults *user_defaults = [NSUserDefaultsstandardUserDefaults];
[user_defaultssetObject:token
forKey:@"DEVICETOKEN"];
[user_defaultssynchronize];
NSLog(@"My token is: %@", deviceToken);
NSString *devID= [[NSStringalloc]initWithFormat:@"%@",
deviceToken];
}
- (void)application:(UIApplication*)application didFailToRegisterForRemoteNotificationsWithError:(NSError*)error
{
NSLog(@"Failed to get token, error: %@", error);
}
//处理收到的消息推送
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary
*)userInfo
{
NSLog(@"Receive remote notification : %@",userInfo);
UIAlertView *alert =
[[UIAlertViewalloc]
initWithTitle:@"温馨提示"
message:[[NSStringalloc]initWithFormat:@"%@",userInfo]
delegate:nil
cancelButtonTitle:@"确定"
otherButtonTitles:nil];
[alertshow];
}
转载请注明出处:http://blog.csdn.net/sevenquan
iOS开发社区群:496146057
相关文章推荐
- iOS崩溃调试的使用和技巧
- 那些好用的iOS开发工具
- iOS中下载的demo出现上下部分为黑色解决办法
- IOS地图坐标系之间转换的算法
- 支付宝 iOS SDK 官方下载页面
- iOS性能优化
- iOS应用性能调优的25个建议和技巧
- 实现ios常见菜单效果的思路
- Maximum height of iOS 8 Today Extension?
- iOS开发之后台运行
- iOS 查找友盟错误日志代码位置 —— HERO博客
- 字符串处理——iOS版本判断
- IOS应用开发-发布详细流程
- ios strong weak
- iOS 开发之照片框架详解之二 —— PhotoKit 详解(下)
- 关于ios的ipa包的分析之link map 文件的分析
- 苹果发布证书
- iOS 开发之照片框架详解之二 —— PhotoKit 详解(上)
- iOS下JS与原生OC互相调用
- iOS 开发之照片框架详解