- 浏览: 1336403 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (471)
- 原创文章 (4)
- Database (84)
- J2SE (63)
- Web (26)
- Javascript (30)
- Lucene (11)
- os (13)
- 算法 (8)
- Webservice (1)
- Open projects (18)
- Hibernate (18)
- Spring (15)
- Css (2)
- J2ee (2)
- 综合技术 (18)
- 安全管理 (13)
- PatternsInJava (27)
- NIO (5)
- Ibatis (2)
- 书籍收藏 (1)
- quartz (7)
- 并发编程 (15)
- oracle问题 (2)
- ios (60)
- coco2d-iphone (3)
- C++ (6)
- Zookeeper (2)
- golang (4)
- animation (2)
- android (1)
最新评论
-
dandingge123:
【引用】限制UITextField输入长度的方法 -
qja:
...
对List顺序,逆序,随机排列实例代码 -
安静听歌:
现在在搞这个,,,,,哎~头都大了,,,又freemarker ...
通用大型网站页面静态化解决方案(一) -
springdata-jpa:
java quartz定时任务demo教程源代码下载,地址:h ...
Quartz 配置参考 -
马清天:
[b][/b][list][*]引用[u][/u][/list ...
通用大型网站页面静态化解决方案(一)
Here is part two of the blog series “Creating an iPhone Daemon”, for part one please click this link
As I said in part 1, we will be creating the DLocationDelegate class.
With most daemons, you do a task like read a file, do something with that file, sleep for a certain amount of time, then check for file changes, and repeat the steps over again. Unfortunately, with GPS coordinates, we have to wait for the CoreLocation delegate to give us the coordinates. The thing about Objective-C and Apple’s Cocoa framework is that most of the classes depend heavily on delegates. This is also true when dealing with the CoreLocation APIs. So lets get coding.
So lets write the DLocationDelegate header file first, this will give us a good look at what is ahead
#import <CoreLocation/CoreLocation.h> #import <Foundation/Foundation.h> #import <UIKit/UIKit.h> @interface DLocationDelegate : NSObject <CLLocationManagerDelegate> { BOOL trackingGPS; CLLocationManager *locationManager; } @property (nonatomic, retain) CLLocationManager *locationManager; - (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation; - (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error; -(void) startIt:(NSTimer *) timer; -(void) startItAgain:(NSTimer *)timer; - (void)connectionDidFinishLoading:(NSURLConnection *)connection; @end
So lets go through this line by line starting with our imports
#import <CoreLocation/CoreLocation.h> #import <Foundation/Foundation.h> #import <UIKit/UIKit.h>
The most important import we have here is the CoreLocation framework, this will let us use the CLLocationManager class.
@interface DLocationDelegate : NSObject <CLLocationManagerDelegate>
When you have a class name in <> symbols, Objective-C now knows that you are implementing methods from this class. In this case to receive the GPS coordinates we use the CLLocationManagerDelegate protocol
BOOL trackingGPS; CLLocationManager *locationManager;
The Boolean trackingGPS will tell us if we are currently tracking the GPS, this will be used to tell if the CLLocationManager is currently looking for coordinates. The locationManager is the actual class that will get the GPS coordinates from either the GPS (iPhone 3G) or the cell towers (iPhone 2G).
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation; - (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error;
These are the delegate methods for the CLLocationManagerDelegate. The first one “didUpdateToLocation” will give us the coordinates using a CLLocation class which contains a longitude, latitude, and sometimes even a altitude. The second function will notify our DLocationDelegate of any errors with the GPS, maybe if your iPhone is inside a lead case .
-(void) startIt:(NSTimer *) timer; -(void) startItAgain:(NSTimer *)timer;
We will use these functions to start the GPS after a certain amount of time.
- (void)connectionDidFinishLoading:(NSURLConnection *)connection;
This is for the NSURLConnection object that will send the GPS coordinates to our server.
In part three of this tutorial we will create the DLocationDelegate.m file (the implementation file)
-Chris
转自 :http://chrisalvares.com/blog/30/creating-an-iphone-daemon-part-2/
发表评论
-
ios 声音合成
2013-08-18 13:20 1295http://stackoverflow.com/ques ... -
__bridge,__bridge_retained和__bridge_transfer的意思,区别与使用 20 三
2012-12-24 01:41 1723使用ARC能帮我们减轻不少内存管理方面的负担,尤其是对用 ... -
CAAnimation
2012-12-23 01:09 2357CAAnimation采用了CAMediaTi ... -
UIViewAnimation动画与Core Animation的CATransition类动画
2012-12-23 01:06 2759使用UIView类函数实现://U ... -
GCD实战2:资源竞争
2012-12-23 01:04 1603转自http://www.dreamingwish.co ... -
GCD实战一:使用串行队列实现简单的预加载
2012-12-22 17:10 2925转自 http://www.dreamingwish.c ... -
GCD介绍(四): 完结
2012-12-22 17:08 1424转自 http://www.dreamingwish.c ... -
GCD介绍(三): Dispatch Sources
2012-12-22 17:07 1665转自 http://www.dreamingwish.com/ ... -
GCD介绍(二): 多核心的性能
2012-12-22 17:05 1214转自http://www.dreamingwish.co ... -
基本概念和Dispatch Queue
2012-12-22 17:03 1394转自 http://www.dreamingwish.c ... -
Best Audio Format for iPhone Audio Programming
2012-12-19 16:26 2575I had never done audio p ... -
LAME 是一个开源的MP3解码编码工具
2012-12-19 13:09 8629MP3 Encoding * 编码MP3文件必须按如下 ... -
sqlite3中的数据类型
2012-12-10 21:37 1351(转)http://www.cnblogs.com/kfqco ... -
ios随机数,and()、random()、arc4random()
2012-11-15 11:06 4736原文:http://bj007.blog.51cto.c ... -
IPHONE GIF 播放的方式
2012-10-11 18:30 1460转 http://blog.csdn.net/zltia ... -
在新线程中使用NSTimer
2012-10-11 18:21 1594转自 http://blog.csdn.net/sjzs ... -
Creating an iPhone Daemon – Part 5
2012-09-02 15:29 1544Creating an iPhone Daemon – ... -
Creating an iPhone Daemon – Part 4
2012-09-02 15:28 1412Creating an iPhone Daemon – ... -
Creating an iPhone Daemon – Part 3
2012-09-02 15:25 1511This is part three of the bl ... -
Creating an iPhone Daemon – Part 1
2012-09-02 15:23 1171So I thought I would start t ...
相关推荐
Daemon Tools是一款著名的虚拟光驱软件,它在IT行业中被广泛使用,特别是在安装大型游戏或软件时,无需物理光驱即可运行CD/DVD镜像文件。该软件的主要功能是模拟光驱设备,允许用户加载ISO、BIN等镜像文件,极大地...
2. 运行"daemon.exe",按照安装向导的提示进行操作。 3. 接受许可协议,选择安装路径,以及是否创建桌面快捷方式等选项。 4. 完成安装后,启动Daemon Tools软件。 5. 在软件界面中,添加需要的ISO文件,软件会自动...
虚拟光驱 daemon_tools_347cn_eric虚拟光驱 daemon_tools_347cn_eric虚拟光驱 daemon_tools_347cn_eric虚拟光驱 daemon_tools_347cn_eric虚拟光驱 daemon_tools_347cn_eric虚拟光驱 daemon_tools_347cn_eric虚拟光驱...
4.40.2版本是DAEMON Tools Lite的一个历史版本,游侠原创简体中文V5.7版则是针对中国用户特别定制的,包含了中文语言包,使得国内用户在使用时更加方便。 这个压缩包“DAEMON Tools Lite 4.40.2游侠原创简体中文V...
Daemon Tools是一款广受欢迎的虚拟光驱软件,尤其在游戏爱好者和系统管理员中有着广泛的使用。它的3.47版本是一个经典的老版本,以其小巧的体积(不到500KB)和出色的性能赢得了用户的好评。这个版本可能在很多地方...
2. **兼容性检查**: 确认你的操作系统版本与Daemon Tools 3.4.7相兼容,以保证正常运行。 3. **安装设置**: 在安装过程中,注意阅读每一项设置,避免不必要的第三方软件捆绑安装。 4. **许可证协议**: 阅读并接受...
2. **光盘镜像管理**:用户可以通过 Daemon Tools 轻松创建、编辑、刻录和管理光盘镜像文件,提高工作效率。 3. **设备模拟**:它可以模拟多种光驱设备,包括CD-ROM、DVD-ROM、Blu-ray等,满足不同格式的光盘需求。...
2. 通过资源管理器导航到Daemon Tools的安装目录(通常在C:\Program Files或C:\Program Files (x86)),然后手动删除整个Daemon Tools文件夹。 3. 检查“启动”文件夹(C:\Users\用户名\AppData\Roaming\Microsoft\...
DaemonTools4.09是一款经典的虚拟光驱软件,它允许用户在计算机上模拟CD/DVD驱动器,无需物理光盘即可运行光盘映像文件。这个版本被特别提及为适用于Windows Server 2008操作系统,表明它兼容该服务器平台,但可能不...
Daemon Tools是一款广受欢迎的虚拟光驱软件,尤其在3.46版本时,它已经拥有相当成熟的稳定性和功能。这个版本特别为中国用户提供了简体中文界面,使得国内用户能够更加方便地操作和理解软件的各项功能。 Daemon ...
标题中的"daemon3.47版"指的是Daemon Tools这一知名虚拟光驱软件的特定版本,即3.47版。Daemon Tools是历史悠久且广受好评的虚拟光驱软件之一,它提供多种操作系统平台的支持,包括Windows系统。 Daemon Tools的...
DAEMON Tools是一款知名的虚拟光驱软件,其最新版本为5.2.0.0。这款工具在IT领域中被广泛使用,特别是在游戏爱好者和系统管理员群体中,因其强大的功能和易用性而备受推崇。DAEMON Tools的主要作用是模拟硬盘驱动器...
Daemontools是一款功能强大的系统工具,主要用于管理和监控持续运行的服务。版本4.11是其一个重要的更新,特别地,这里的"中文完美版"意味着它已经进行了汉化处理,适合中国用户使用,无需担心语言障碍。这个版本的...
daemon329.exe虚拟光驱
2. 多种虚拟磁盘格式支持:Daemon Tools Lite 支持多种虚拟磁盘格式,包括 ISO、BIN、CUE、MDF、MDX、Nero BurningROM(NRG)等。 3. 轻松安装:Daemon Tools Lite 的安装过程非常简单,用户只需按照安装向导的提示...
《虚拟光驱技术详解与DAEMON Tools V3.46简体中文版介绍》 在数字化时代,虚拟光驱作为一种高效、便捷的工具,已经逐渐成为计算机用户的重要辅助软件。虚拟光驱允许用户在没有物理光驱的情况下,通过创建虚拟光盘...
Daemon Tools Life 4.40.2.1031凭借其强大的功能和广泛的兼容性,成为众多用户推崇的虚拟光驱解决方案。本篇文章将详细介绍DAEMON Tools Life软件的相关知识及其使用方法,帮助用户更有效地利用这款虚拟光驱软件来...
Daemon Tools是一款著名的虚拟光驱软件,它在个人电脑系统中广泛使用,特别是在Windows操作系统环境下。这个压缩包包含的是Daemon Tools的四个旧版本:317、344、346和347,适用于Win9x/Me操作系统,这意味着它们...
"daemon-0.8.tar.gz" 是一个在IT领域常见的压缩文件格式,它包含了名为 "daemon-0.8" 的项目或软件的源代码或资源。这个文件的命名方式表明它是一个版本号为0.8的守护进程(daemon)相关的程序。在Linux和Unix系统中...
DAEMON Tools Lite 可以制作简单光盘映像文件和模拟 CD/DVD 光驱的最流行软件产品 功能 加载 *.mdx, *.mds/*.mdf, *.iso, *.b5t, *.b6t, *.bwt, *.ccd, *.cdi, *.bin/*.cue, *.ape/*.cue, *.flac/*.cue, *.nrg, ...