文档章节

iphone开发-Local Notifications

木木情深
 木木情深
发布于 2015/01/07 17:35
字数 477
阅读 53
收藏 1

 两种方式 Local notifications 和 push notifications(也成为Remote notifications)可以让当前没有工作的App,给用户提示信息。用户的设备上会出现一个Alert,用户可以点击进入该App。其中Push notifications适用于 iOS 3.0 及 Mac OS X v7.0, Local notifications 适用于 iOS 4。
      比较简单的应用,如捕鱼达人。很长一段时间不玩的话,系统会弹出一个提示,提醒玩家好久没有玩了。这是一种营销方式。而且成本也不高。便是通过Local notifications来实现的。现在我们就主要分析一下 Local notifications。至于Remote notifications,用于有服务器端支持的App。

      UIApplication扩展了一个UILocalNotifications类别(同样也有UIRemoteNotifications)
      @interface UIApplication (UILocalNotifications)

       它引入了一些方法如:
             scheduleLocalNotification:
             cancelLocalNotification:
       用来注册或取消一个UILocalNotification

       假设我们规定时间为3天,如果3天没有来玩,便弹出提示。那么我们首先应该在游戏退出时注册一个三天后触发的事件。同时要在游戏开始时,注销掉这个事件。测试发现applicationWillTerminate并不会调用,可能是ios4之后,用户按下home键,当前应用并不退出而是转向后台的缘故。因此我们将注册位置放在了applicationDidEnterBackground里。
  
    NSDate *notifyTime = [NSDate dateWithTimeIntervalSinceNow:3*24*3600];//触发的时间
    UILocalNotification *localNofify = [[UILocalNotification alloc] init];
    if(localNofify==nil)
        return;
    localNofify.fireDate = notifyTime;
    localNofify.timeZone = [NSTimeZone defaultTimeZone];
   
    localNofify.alertBody = @"您很久沒有玩了......";
    localNofify.soundName = UILocalNotificationDefaultSoundName;
    localNofify.applicationIconBadgeNumber = 1;   
    [[UIApplication sharedApplication] scheduleLocalNotification:localNofify];//注册
    [localNofify release];

    需要说明的是iconBadgeNumber,它代表的是该应用的Icon上显示的数字数。
iphone开发-Local <wbr>Notifications
     在游戏启动时要记得清零:
    [[UIApplication sharedApplication] cancelAllLocalNotifications];
    [[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
  

更多信息查看官方网站:http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Introduction/Introduction.html#//apple_ref/doc/uid/TP40008194-CH1-SW1

本文转载自:http://blog.sina.com.cn/s/blog_7a2ffd5c0100ugfa.html

木木情深
粉丝 37
博文 189
码字总数 26451
作品 0
广州
程序员
私信 提问
iphone推送java代码实现

最近在研究iphone推送的java实现,看过发现原来很简单,以下是我根据网上源码修改的程序,具体里面的证书和手机token的生产就不解释了,本人没有搞过iphone,有需要的可以再网上搜索以下,很...

就是这样
2012/04/13
1K
0
WatchOS3 之初体验

Apple Watch的架构 WatchKit布局 动画 Apple Watch与iPhone数据交互--Watch Connectivity Apple Watch的架构 WatchKit带给我的惊讶之一是它的架构。目前Watch App的运行是由两部分相互结合进...

Frida芥末
2016/12/15
9
0
使用Github for Windows clone项目时出错,求解答!谢谢谢谢

很久之前就想学着用Github管理自己写的Demo了。 但是下载了Github for Windows clone项目一直出错。 下面贴下报错信息 报错的文档: 2015-02-16 19:56:57.8883|WARN|thread: 1|StandardUser...

_WitNesS23
2015/02/16
2.8K
1
Android对阵iPhone 3.0 孰强孰弱

驱动之家:苹果最新发布了iPhone 3.0固件升级,随着这次的升级,iPhone中存在的问题不足被修正,而功能再一次得到增强。到底这款系统与Android系统孰强孰弱呢,下面的表格可以告诉你答案。 ...

红薯
2009/07/09
664
0
ASIHTTPRequest documentation

ASIHTTPRequest documentation Last updated: 15th May 2011 (v1.8.1) About Setup instructions How to use it Amazon S3 Rackspace Cloud Files ASIWebPageRequest Changelog Who is using......

晨曦之光
2012/05/28
117
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring Boot + Mybatis-Plus 集成与使用(二)

前言: 本章节介绍MyBatis-Puls的CRUD使用。在开始之前,先简单讲解下上章节关于Spring Boot是如何自动配置MyBatis-Plus。 一、自动配置 当Spring Boot应用从主方法main()启动后,首先加载S...

伴学编程
昨天
7
0
用最通俗的方法讲spring [一] ──── AOP

@[TOC](用最通俗的方法讲spring [一] ──── AOP) 写这个系列的目的(可以跳过不看) 自己写这个系列的目的,是因为自己是个比较笨的人,我曾一度怀疑自己的智商不适合干编程这个行业.因为在我...

小贼贼子
昨天
7
0
Flutter系列之在 macOS 上安装和配置 Flutter 开发环境

本文为Flutter开发环境在macOS下安装全过程: 一、系统配置要求 想要安装并运行 Flutter,你的开发环境需要最低满足以下要求: 操作系统:macOS(64位) 磁盘空间:700 MB(不包含 IDE 或其余...

過愙
昨天
6
0
OSChina 周六乱弹 —— 早上儿子问我他是怎么来的

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @凉小生 :#今日歌曲推荐# 少点戾气,愿你和这个世界温柔以待。中岛美嘉的单曲《僕が死のうと思ったのは (曾经我也想过一了百了)》 《僕が死の...

小小编辑
昨天
2.7K
16
Excption与Error包结构,OOM 你遇到过哪些情况,SOF 你遇到过哪些情况

Throwable 是 Java 中所有错误与异常的超类,Throwable 包含两个子类,Error 与 Exception 。用于指示发生了异常情况。 Java 抛出的 Throwable 可以分成三种类型。 被检查异常(checked Exc...

Garphy
昨天
42
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部