zoukankan      html  css  js  c++  java
  • 本地通知

    本地推送通知

    • 什么是本地推送通知
      • 顾名思义,就是不需要联网就能发出的推送通知(不需要服务器的支持)
    • 本地推送通知的使用场景
      • 常用来定时提醒用户完成一些任务,比如
      • 清理垃圾、记账、买衣服、看电影、玩游戏

    2.1-如何发出本地推送通知

    • 创建本地推送通知对象

       UILocalNotification *ln = [[UILocalNotification alloc] init];
      • 设置本地推送通知属性
      • 推送通知的触发时间(何时发出推送通知)
         @property(nonatomic,copy) NSDate *fireDate;
      • 推送通知的具体内容
         @property(nonatomic,copy) NSString *alertBody;
      • 在锁屏时显示的动作标题(完整标题:“滑动来” + alertAction)
         @property(nonatomic,copy) NSString *alertAction;
      • 音效文件名
         @property(nonatomic,copy) NSString *soundName;
      • app图标数字
         @property(nonatomic) NSInteger applicationIconBadgeNumber;
    • 调度本地推送通知(调度完毕后,推送通知会在特地时间fireDate发出)

         [[UIApplication sharedApplication] scheduleLocalNotification:ln];
    • 获得被调度(定制)的所有本地推送通知
         @property(nonatomic,copy) NSArray *scheduledLocalNotifications;
      (已经发出且过期的推送通知就算调度结束,会自动从这个数组中移除)
    • 取消调度本地推送通知
         -(void)cancelLocalNotification:(UILocalNotification *)notification;
         -(void)cancelAllLocalNotifications;
    • 立即发出本地推送通知
         -(void)presentLocalNotificationNow:(UILocalNotification *)notification;

    2.2-本地推送通知的其他属性

    • 每隔多久重复发一次推送通知

      @property(nonatomic) NSCalendarUnit repeatInterval;
    • 点击推送通知打开app时显示的启动图片

       @property(nonatomic,copy) NSString *alertLaunchImage;
    • 附加的额外信息

       @property(nonatomic,copy) NSDictionary *userInfo;
    • 时区

       @property(nonatomic,copy) NSTimeZone *timeZone;

      (一般设置为[NSTimeZone defaultTimeZone],跟随手机的时区)

    2.3-点击本地推送通知

      • 当用户点击本地推送通知,会自动打开app,这里有2种情况

        • app并没有关闭,一直隐藏在后台

          • 让app进入前台,并会调用AppDelegate的下面方法(并非重新启动app)
            -(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification;
        • app已经被关闭(进程已死)

          • 启动app,启动完毕会调用AppDelegate的下面方法
            -(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;
            • launchOptions参数通过UIApplicationLaunchOptionsLocalNotificationKey取出本地推送通知对象
  • 相关阅读:
    TortoiseGit 合并主分支代码.pull request
    MVC EF 修改某些值
    MVC 提交表单
    MVC 统计之 自定义 列表
    MVC 起始页修改 区域
    asp.net C# MVC DropDownList
    asp.net C# MVC 提交表单后清空表单
    Python 线程启动的四种方式
    Git 命令的学习
    Node.js v10.1.0 Documentation
  • 原文地址:https://www.cnblogs.com/jinlianglu/p/6407643.html
Copyright © 2011-2022 走看看