随笔分类 -  手机开发(iPhone)

摘要:做iPhone的网络应用,处理XML是家常便饭,NSXMLParser用起来还是得心应手的。不过这个东西,处理非UTF-8,会解析失败。这篇文章就是想和大家一起分享一些这方面开发的新的。 我们在某个RSS地址,可以得到下面这样的XML文件。我这里只是截取一段, ---------------------------------------<?xml version="1.0" encoding="big5"?><rss version="2.0"><channel><title>RTHK 阅读全文
posted @ 2012-07-20 08:55 郑文亮 阅读(497) 评论(0) 推荐(0) 编辑
摘要:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://yuyi123.blog.51cto.com/1987900/504457最终效果图使用了一个自定义uiview,里面加入了一个progressbar和两个label,头文件#import <UIKit/UIKit.h>@protocol UIDownloadBarDelegate;@interface UIDownloadBar : UIView {UIProgressView *progressView;NSURLRequest* DownloadRequest 阅读全文
posted @ 2012-07-18 17:23 郑文亮 阅读(598) 评论(0) 推荐(0) 编辑
摘要:原文链接已经图片来源:10 iOS Libraries to Make Your Life Easier因为iOS SDK相对比较底层,所以开发者就得受累多做一些体力活。不过幸运的是,有很多第三方的类库可以用来简化很多不必要的工作.经过作者团队的慎重讨论,他们 评选出了10款能够极大提高iOS开发效率的类库,根据原文作者的评价来看,基本上有了这10款工具,做iOS开发就真的跟泡Cocoa一样了。MBProgressHUD——进展指示符库苹果的应用程序一般都会用一种优雅的,半透明的进度显示效果,不过这个API是不公开的,因此你要是用了,很可能被清除出AppStore。而 MBProgressHU 阅读全文
posted @ 2012-07-14 21:27 郑文亮 阅读(610) 评论(0) 推荐(0) 编辑
摘要:http://www.devdiv.com/iOS_iPhone-ASIHTTPRequest使用指南---_lt__lt_翻译稿_gt__gt_---连载-thread-93741-1-1.htmlhttp://www.devdiv.com/iOS_iPhone-ASIHTTPRequest%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97---_lt__lt_%E7%BF%BB%E8%AF%91%E7%A8%BF_gt__gt_---%E8%BF%9E%E8%BD%BD-thread-93741-1-1.html 阅读全文
posted @ 2012-07-14 20:47 郑文亮 阅读(364) 评论(0) 推荐(0) 编辑
摘要:1.创建并运行一个请求1.1 创建一个同步请求创建一个同步请求是使用ASIHTTPRequest的最简单的方式。发送消息startSynchronous会在同一个线程中执行这个请求,并且当请求结束的时候会返回控制权(成功或者其它的情况)。通过error属性检查问题。调用方法responseString从返回结果中获取字符串,不要使用这个方法获取二进制数据,使用方法responseData获得一个NSData对象。对于大的文件,设置你的请求的downloadDestinationPath属性用于下载文件。 - (IBAction)grabURL:(id)sender { NSURL ... 阅读全文
posted @ 2012-07-14 20:22 郑文亮 阅读(1403) 评论(0) 推荐(0) 编辑
摘要:在ASIHTTPRequest中,要显示进度跟踪是很简单的。只需要使用一个UIProgressView控件,并简单地将它设置为request的setUploadProgressDelegate/setDownloadProgressDelegate属性,以即把showAccurateProgress设为YES就可以了。但有时候我们需要为用户定制自己的UIProgressView显示。比如在进度条上方加一个Label显示当前进度(或者实际的上传字节数):这就需要用到ASIProgressDelegate协议了。对于上传进度而言,需要注意其中的3个方法(还有两个是下载进度相关的),这些方法都是可选 阅读全文
posted @ 2012-07-14 15:53 郑文亮 阅读(1143) 评论(1) 推荐(0) 编辑
摘要://上传文件ASIFormDataRequest *request=[ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"SomeUploadServer"]];[request setFile:@"/Users/snakeninny/Library/Application Support/iPhone Simulator/4.2/Library/Fuck.rtf"forKey:@"rtf"];[request setDelegate:self];[request star 阅读全文
posted @ 2012-07-14 14:09 郑文亮 阅读(3734) 评论(0) 推荐(0) 编辑
摘要:在iPhone上是采用sqlite进行数据存储是我一种比较习惯性的做法。一般在其他平台也比较习惯用sqlite,比如android。而iphone上有一些封装好的第三方框架提供使用,更节省了许多时间。如:Sqlitepersistentobjects ,FMDB。今天查找了这个两个框架,感觉FMDB的风格更符合我的使用,其实两者是各有优点的,只是看个人喜好而已。FMDatabase和FMResultSet;其中的FMResultSet对象让我想起了android中sqlite的cursor集合啊。FMDB的github地址是,https://github.com/ccgus/fmdb。补充:是 阅读全文
posted @ 2012-07-13 19:48 郑文亮 阅读(433) 评论(0) 推荐(0) 编辑
摘要:项目本身启用了ARC,但需要用到FMDATABASE,而且FMDATABASE是不支持ARC的,如果调整太麻烦。后来查找到了,原来在XCODE中可以单独为源代码中的文件设置编译参数。1、选择项目2、在Build Phases -> Compile sources,选择需要的文件,在右边Compile Flags输入-fno-objc-arc分享到: 上一篇:IOS中定义全局变量下一篇:objective-c中字符串反向查找 阅读全文
posted @ 2012-07-13 19:46 郑文亮 阅读(763) 评论(0) 推荐(0) 编辑
摘要:是个很强大的网络库,用它可以很简单的进行网络开发,比如上传下载,在它的官网已有详细的教程教大家如何使用。今天我要说的是在Xcode4下如何配置,使其能用ASIHttpRequest这个开源库。其实主页上已有说明了,但是加入到工程中的源码还要经过筛选,有点麻烦。我是将库的所有源码都回入到工程当中编译。第一步:下载源代码。第二步:将其源代码拖入你的工程。第三步:添加需要的framework到工程,如下图:共需要加入6个动态库:libxml, CFNetwork, libz, CoreGraphics, MobileCoreServices, SystemConfiguration, 网官少说了一个 阅读全文
posted @ 2012-07-13 19:02 郑文亮 阅读(685) 评论(0) 推荐(0) 编辑
摘要:ASIHTTPRequest 详解, http 请求终结者版权归旺财勇士所有〜转载需声名〜原贴地地址:http://wiki.magiche.net/pages/viewpage.action?pageId=2064410被李旭添加,被李旭最后更新于Mar 25, 2011(查看更改)目录目录发起一个同步请求创建一个异步请求队列请求请求队列上下文ASINetworkQueues, 它的delegate提供更为丰富的功能取消异步请求安全的内存回收建议向服务器端上传数据下载文件获取响应信息获取请求进度cookie的支持大文件断点续传ASIDownloadCache 设置下载缓存多种的缓存并存缓存策 阅读全文
posted @ 2012-07-13 17:07 郑文亮 阅读(455) 评论(0) 推荐(0) 编辑
摘要:iOS开发中会经常用到文件上传下载的功能,这篇文件将介绍一下如何结合asp.net webservice实现文件上传下载。 首先,让我们看下文件下载。这里我们下载cnblogs上的一个zip文件。使用NSURLRequest+NSURLConnection可以很方便的实现这个功能。在asp.net webservice中可以将文件的地址返回到iOS系统,iOS系统再通过这个url去请求下载该文件。这里为了简单起见,直接将url写道代码里面了。我们可以使用两种方式去下载文件。1、同步下载文件: NSString *urlAsString = @"http://files.cnblogs 阅读全文
posted @ 2012-07-13 16:05 郑文亮 阅读(2152) 评论(1) 推荐(0) 编辑
摘要:原文作者为Greg Miller,文章地址在:http://unixjunkie.blogspot.com/2006/02/nil-and-nil.html在Objective-C中,有一些我们之前并不熟悉但是经常见到的数据类型,比如id、nil、Nil、SEL等等。在很多文章里,我们都见过这些数据类型的介绍,但是都没有说的太清楚。这篇文章从最底层的定义开始,介绍一下这些类型到底是怎么定义的,这会帮助我们更加深入地了解Objective-C。Objective-C中有一些很有趣的数据类型经常会被错误地理解。他们中的大多数都可以在/usr/include/objc/objc.h或者这个目录中的其 阅读全文
posted @ 2012-07-13 15:48 郑文亮 阅读(230) 评论(0) 推荐(0) 编辑
摘要:以下代码转自CocoaChina会员的博客(FLYBLOG),能实现从iPhone压缩图片并上传至服务器的功能。头文件@interface EPUploader : NSObject { NSURL *serverURL; NSString *filePath; id delegate; SEL doneSelector; SEL errorSelector; BOOL uploadDidSucceed;}- (id)initWithURL: (NSURL *)serverURL filePath: (NSString *)filePath delegate: (id)delegate... 阅读全文
posted @ 2012-07-13 15:41 郑文亮 阅读(988) 评论(0) 推荐(0) 编辑
摘要:http://www.cnblogs.com/zhwl/archive/2012/07/20/2600553.html 阅读全文
posted @ 2012-07-12 11:05 郑文亮 阅读(325) 评论(0) 推荐(0) 编辑
摘要:异步:NSMutableData* buf = [[NSMutableData alloc] initWithLength:0];NSURLConnection* connection = [[NSURLConnection alloc] initWithRequest:req delegate:self];//收到响应时, 会触发- (void)connection:(NSURLConnection *)aConnection didReceiveResponse:(NSURLResponse *)aResponse;//你可以在里面判断返回结果, 或者处理返回的http头中的信息//每收到 阅读全文
posted @ 2012-07-12 10:46 郑文亮 阅读(546) 评论(1) 推荐(0) 编辑
摘要:XCode4.2iOS各模板简述:Master-Detail Application:This template provides a starting point for a master-detail application. It provides a user interface configured with a navigation controller to display a list of items and also a split view on iPad.此模板提供了一个主应用程序的起点。它提供了一个配置有导航控制器的用户界面,显示的项目清单和一个能在iPad上拆分的视 阅读全文
posted @ 2012-06-07 13:52 郑文亮 阅读(632) 评论(0) 推荐(0) 编辑
摘要:对于iphone开发人员来说,内存管理是极为重要的技巧,哪怕程序的功能再强大,设计再漂亮,如果内存控制不好,也难逃程序莫名退出的噩运,这与网页开发是完全不同的。内存控制里面有很多门道,在这里分析一下 viewDidUnload 和 dealloc 的区别,关于这两者的区别的文章很多,但是大都是摘抄和翻译官方文档,有的也只是简单的说两句,并没有详细说出两者具体的区别。在了解两者之间的区别,首先要知道view的生命周期,google 里面有很多文章,可以先去搜一下,这里就不详解了。顾名思义 viewDidUnload就是当 view 被卸载以后执行的语句,它与 viewDidLoad 是相互呼应. 阅读全文
posted @ 2012-06-06 17:05 郑文亮 阅读(1081) 评论(2) 推荐(1) 编辑
摘要:最近两天在研究ios的消息推送机制。研究这个东西,还是充满兴趣的。Push的原理:Push 的工作机制可以简单的概括为下图图中,Provider是指某个iPhone软件的Push服务器,这篇文章我将使用.net作为Provider。APNS 是Apple Push Notification Service(Apple Push服务器)的缩写,是苹果的服务器。上图可以分为三个阶段。第一阶段:.net应用程序把要发送的消息、目的iPhone的标识打包,发给APNS。第二阶段:APNS在自身的已注册Push服务的iPhone列表中,查找有相应标识的iPhone,并把消息发到iPhone。第三阶段:i 阅读全文
posted @ 2012-06-05 14:30 郑文亮 阅读(268) 评论(0) 推荐(0) 编辑
摘要:- (NSURLRequest *)connection:(NSURLConnection *)connection willSendRequest:(NSURLRequest *)request redirectResp*****e:(NSURLResp*****e *)resp*****e;连接成功后会调用这个方法。在这里面可以获取文件总长度。- (void)connection:(NSURLConnection *)connection didSendBodyData:(NSInteger)bytesWritten totalBytesWritten:(NSInteger)totalBy 阅读全文
posted @ 2012-06-05 14:25 郑文亮 阅读(723) 评论(0) 推荐(0) 编辑