文档章节

ios本地推送demo

 走向未来
发布于 2015/10/10 21:49
字数 435
阅读 1055
收藏 4
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    //应用图标数字
    application.applicationIconBadgeNumber=6;
    
    //申请用户的许可
    float version=[[[UIDevice currentDevice]systemVersion]floatValue];
    if (version>8.0) {
        UIUserNotificationSettings *setting=[UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeSound|UIUserNotificationTypeBadge|UIUserNotificationTypeSound categories:nil];
        [[UIApplication sharedApplication]registerUserNotificationSettings:setting];
    }
    UILocalNotification *localNotification=[launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey];
    if (localNotification!=nil) {
        [self processLocationNotification:localNotification];
    }
    
    return YES;
}
- (void)processLocationNotification:(UILocalNotification *)localNotification{
    UIAlertView *alertView=[[UIAlertView alloc]initWithTitle:@"lanchApp" message:@"loc" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
    [alertView show];
}

//注册设置提醒后   调用的代理方法
- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings{
    if (notificationSettings.types!=UIUserNotificationTypeNone) {
        //注册本地推送  首先是生成UILocalNotification对象
        UILocalNotification *localNotification=[[UILocalNotification alloc]init];
        //提示触发的时间
        localNotification.fireDate=[NSDate dateWithTimeIntervalSinceNow:5];
        //提示推送的内容
        localNotification.alertBody=@"这是一个本地推送测试";
        localNotification.repeatInterval=3;
        localNotification.repeatInterval=NSCalendarUnitMinute;
        //定制消息到来时候播放的声音文件  一定要在Bunddle内,而且声音的持续时间不能超过30s
        localNotification.soundName=@"CAT2.WV";
        //设置系统角标
        localNotification.applicationIconBadgeNumber=6;
        //注册本地通知到系统中,这样系统到指定的时间会触发该通知
        [[UIApplication sharedApplication]scheduleLocalNotification:localNotification];
    }
}
//当程序运行在后台的时候或者程序没有启动,,当注册的本地通知到达时候,ios会弹框并且播放你设置的声音
//当应用程序运行在前台的时候会调用该代理方法  不会播放声音也不会弹框
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification{
    //判断应用程序状态来决定是否弹框
    if (application.applicationState == UIApplicationStateActive) {
        UIAlertView *alterView = [[UIAlertView alloc]initWithTitle:@"本地推送" message:notification.alertBody delegate:nil cancelButtonTitle:@"ok" otherButtonTitles:nil];
        [alterView show];
    }else if (application.applicationState == UIApplicationStateInactive)
    {
        NSLog(@"UIApplicationStateInactive");
    }else{
        //background
        NSLog(@"UIApplicationStateBackground");
    }

    
}


© 著作权归作者所有

粉丝 6
博文 65
码字总数 22758
作品 0
郑州
私信 提问
加载中

评论(1)

b
bandits
0
Phonegap各类商业插件

【Phonegap商业插件服务】[目前插件已经支持到Phonegap最新版本] 1.phonegap-百度社会化分享-andriod插件 v2.0 【该插件支持微信分享和朋友圈分享,qq好友分享,微博分享】 2.phonegap百度社...

夜澜小雨
2015/07/15
1K
0
iOS 10 的推送 User Notifications Framework

介绍 User Notifications Framework 是苹果在 WWDC 2016 推出的。iOS 10 中以前杂乱的和通知相关的 API 都被统一了,现在开发者可以使用独立的 UserNotifications.framework 来集中管理和使用...

佳妮
2018/10/30
44
1
iOS实用技巧 - 私有推送实现方法

  在开发企业app的时候,有的时候基于安全性的考虑,不允许设备连接外网。这就出现了一个问题,就是iOS的推送功能没法工作了,因为iOS的推送功能是固化在系统里,必须连接苹果的APNS服务器...

海淀游民
2014/09/01
4.9K
3
十分钟接入iOS 12新特性——Siri Shortcuts

前言 Xcode 10已经正式发布,开发者可以接入Siri Shortcuts的iOS 12新特性。 WWDC2018的Introduction to Siri Shortcuts Session介绍了Siri Shortcuts的使用和Swift接入,但没有Objective-C...

落影loyinglin
2018/09/26
0
0
iOS开发系列--通知与消息机制

概述 在多数移动应用中任何时候都只能有一个应用程序处于活跃状态,如果其他应用此刻发生了一些用户感兴趣的那么通过通知机制就可以告诉用户此时发生的事情。iOS中通知机制又叫消息机制,其包...

TomatosX
2015/03/19
650
0

没有更多内容

加载失败,请刷新页面

加载更多

java通过ServerSocket与Socket实现通信

首先说一下ServerSocket与Socket. 1.ServerSocket ServerSocket是用来监听客户端Socket连接的类,如果没有连接会一直处于等待状态. ServetSocket有三个构造方法: (1) ServerSocket(int port);...

Blueeeeeee
今天
6
0
用 Sphinx 搭建博客时,如何自定义插件?

之前有不少同学看过我的个人博客(http://python-online.cn),也根据我写的教程完成了自己个人站点的搭建。 点此:使用 Python 30分钟 教你快速搭建一个博客 为防有的同学不清楚 Sphinx ,这...

王炳明
昨天
5
0
黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
昨天
15
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
昨天
15
0
jquery--DOM操作基础

本文转载于:专业的前端网站➭jquery--DOM操作基础 元素的访问 元素属性操作 获取:attr(name);$("#my").attr("src"); 设置:attr(name,value);$("#myImg").attr("src","images/1.jpg"); ......

前端老手
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部