iphone开发-Local Notifications

两种方式 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上显示的数字数。
Notifications" title="iphone开发-Local 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

时间: 2024-08-11 01:35:53

iphone开发-Local Notifications的相关文章

iPhone开发常问的十个问题

iPhone开发常问的十个问题 前言 今天去stackoverflow.com上看了一下iPhone标签下排名最高的10个问题,将它们整理出来,希望这些常见问题能帮到一些iPhone开发的初学者.本来想把答案也翻译过来的,后来发现答案资料通常都比较复杂,翻译起来太麻烦.所以大家还是看英文的答案吧,我只顺带用中文总结一下答案. 问题一: 有哪些iPhone开发和Objective-C的入门资料 这个确实是最常问的问题了.对于我个人来说,入门时所看的资料主要是<From C++ to Objecti

iphone开发之获取网卡的MAC地址和IP地址

本文转载至 http://blog.csdn.net/arthurchenjs/article/details/6358489 这是获取网卡的硬件地址的代码,如果无法编译通过,记得把下面的这几个头文件加上把. #include <sys/socket.h> // Per msqr#include <sys/sysctl.h>#include <net/if.h>#include <net/if_dl.h> #pragma mark MAC addy// Re

深入理解iPhone数据持久化(手把手教你iphone开发 – 基础篇)

在所有的移动开发平台数据持久化都是很重要的部分:在j2me中是rms或保存在应用程序的目录中,在symbian中可以保存在相应的磁盘目录中和数据库中.symbian中因为权限认证的原因,在3rd上大多数只能访问应用程序的private目录或其它系统共享目录.在iphone中,apple博采众长,提供了多种数据持久化的方法,下面笔者会逐个进行详细的讲解. iphone提供的数据持久化的方法,从数据保存的方式上讲可以分为三大部分:属性列表.对象归档.嵌入式数据库(SQLite3).其他方法. 一.属

iOS/iphone开发如何为苹果开发者帐号APPID续费

原文地址:iOS/iphone开发如何为苹果开发者帐号APPID续费作者:陈双超_群雄 其实相当的简单,这篇内容是给财务看的,有的地方连我自己看了都感觉有点...但如果不详细,她又要为难我,所以我就当她0智商 1.     打开 https://developer.apple.com/account/overview.action 2.(如何查看到自己的证书哪天到期,就是具体日起,这个的话平时是看不到的只有在最后60天的时候会提醒你.) 3.4.5.6.7.为了避免财务输入麻烦或者她输入出错引起

iPad和iPhone开发的异同

niPad和iPhone开发的异同 niPad简介 n什么是iPad p一款苹果公司于2010年发布的平板电脑 p定位介于苹果的智能手机iPhone和笔记本电脑产品之间 p跟iPhone一样,搭载的是iOS操作系统 niPhone和iPad niPhone是手机,iPad.iPad Mini是平板电脑 n niPhone和iPad开发的区别 p屏幕的尺寸 \分辨率 pUI元素的排布 \设计 p键盘 pAPI p屏幕方向的支持 p… … n n屏幕的尺寸 \分辨率 n在iOS开发中,只需要关注以下

ios - iPhone开发重构:从硬编码到模型到规律

无论在iPhone开发还是学习的过程中都会看到一些不是很理想的代码,不可 否认自己也在不断“贡献”着这类代码.面对一些代码的“坏味道”,重构显然 是个有效的解决途径.<iPhone开发重构>系列就想总结和补充iPhone开发中经 历的一些重构,其间可能会引用一些开源以及实际项目的代码,本着对技术的探 求,冒昧之处还请作者多多见谅. 在iPhone开发的过程中经常会遇到根据不同的Table行或者标识符推入不同 的Controller的需要,一个最直接的实现就是硬编码,通过if…else if…e

iPhone开发 Swift - NSNotification 通知

Swift创建Notification通知 创建一个SingleView Application 打开AppDelegate.swift,在方法 application(application:UIApplication,didFinishLaunchingWithOptions launchOptions: NSDictionary?) 中输入代码: func application(application: UIApplication, didFinishLaunchingWithOptio

iphone开发教程下载

iphone开发教程下载 3月份花了1个月研究ios 开发,看了几百页的iphone开发教程,累积了不少电子书,盘点一下 Beginning iPhone 4 Development: Exploring the iOS SDK 目前最好的ios开发书籍,apple的文档做的非常完善,有用的书也不多 下载地址 http://t.cn/hB0xjr iphone user interface design http://t.cn/hB0M6H 这个是必须要看的 iphone开发必看手册 下载地址:

iPhone开发【一】从HelloWorld開始

转载请注明出处,原文网址:http://blog.csdn.net/m_changgong/article/details/8013553 作者:张燕广 从经典的HelloWorld開始踏入iPhone开发的大门吧! keyword:HelloWorld iPhone IOS 1.打开xcode,选择"Create a New Xcode project" 2.xcode中的project分为两大类,一是IOS,二是Mac OS X,前者是进行iPhone/iPad开发,后者是进行Ma