摘要: iOS的沙盒机制,应用只能访问自己应用目录下的文件。iOS不像android,没有SD卡概念,不能直接访问图像、视频等内容。iOS应用产生的内容,如图像、文件、缓存内容等都必须存储在自己的沙盒内。默认情况下,每个沙盒含有3个文件夹:Documents, Library 和 tmp。Library包含Caches、Preferences目录。 上面的完整路径为:用户->资源库->Application Support->iPhone Simulator->6.1->AplicationsDocuments:苹果建议将程序创建产生的文件以及应用浏览产生的文件数据保存在 阅读全文
posted @ 2013-09-03 13:18 李小见 阅读(257) 评论(0) 推荐(0) 编辑
摘要: iOS中原生的SQLite API在使用上相当不友好,在使用时,非常不便。于是,就出现了一系列将SQLite API进行封装的库,例如FMDB、PlausibleDatabase、sqlitepersistentobjects等,FMDB (https://github.com/ccgus/fmdb) 是一款简洁、易用的封装库,这一篇文章简单介绍下FMDB的使用。在FMDB下载文件后,工程中必须导入如下文件,并使用 libsqlite3.dylib 依赖包。FMDB同时兼容ARC和非ARC工程,会自动根据工程配置来调整相关的内存管理代码。FMDB常用类:FMDatabase : 一个单一的S. 阅读全文
posted @ 2013-09-03 13:15 李小见 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 电话、短信是手机的基础功能,iOS中提供了接口,让我们调用。这篇文章简单的介绍一下iOS的打电话、发短信在程序中怎么调用。1、打电话[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://10010"]];//打电话 使用openURL这个API打电话结束后,返回的是系统的拨打电话界面,如何才能返回自己的应用呢?有两种方法与大家分享。第一种是用UIWebView加载电话,这种是合法的,可以上App Store的。代码如下:UIWebView*callWebview =[[UIWebVie 阅读全文
posted @ 2013-09-03 13:10 李小见 阅读(230) 评论(0) 推荐(0) 编辑
摘要: iOS的APP的应用开发的过程中,有时为了bug跟踪或者获取用反馈的需要自动收集用户设备、系统信息、应用信息等等,这些信息方便开发者诊断问题,当然这些信息是用户的非隐私信息,是通过开发api可以获取到的。那么通过那些api可以获取这些信息呢,iOS的SDK中提供了UIDevice,NSBundle,NSLocale。UIDevice UIDevice提供了多种属性、类函数及状态通知,帮助我们全方位了解设备状况。从检测电池电量到定位设备与临近感应,UIDevice所做的工作就是为应用程序提供用户及设备的一些信息。UIDevice类还能够收集关于设备的各种具体细节,例如机型及iOS版本等。其中大部 阅读全文
posted @ 2013-09-03 13:07 李小见 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 之前的《iOS学习——xml数据解析(九)》介绍了xml数据解析,这一篇简单介绍一下Json数据解析。JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与客户端的交互,Json语法参考。关于在iOS平台上进行JSON解析,已经有很多第三方的开源项目,比如TouchJson,JSONKit,SBJon等,自从iOS5.0以后,苹果SDK推出了自带的JSON解决方案NSJSONSerialization,这是一个非常好用的JSON生成和解析工具,效率也是比其他第三方开源项目的高很多,详情可看下图。图片详情可查看NSJSONSerial 阅读全文
posted @ 2013-09-03 13:04 李小见 阅读(386) 评论(0) 推荐(0) 编辑
摘要: 前面一直使用模拟器运行,今天使用了真机调试,这一篇介绍一下真机调试。真机调试需要99$注册,如果有注册过的账号,也可以使用注册账号邀请你加入一个账号下,注册账号可以给你分配权限,我也是使用的邀请成为开发者的。1、登录:首先登录https://developer.apple.com/ios/manage/overview/index.action登录后会进入如下界面: 图一2、制作证书,提前准备好证书,也可以用时制作。1)Finder->应用->钥匙串访问图二这将会打开如下图所示的页面,按照图示内容进行填写: 图三继续后生成证书,注意选择存储到磁盘。3、提交证书在图一中点击 Cert 阅读全文
posted @ 2013-09-03 13:01 李小见 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 在iPhone开发中,XML的解析有很多选择,iOS SDK提供了NSXMLParser和libxml2两个类库,另外还有很多第三方类库可选,例如TBXML、TouchXML、KissXML、TinyXML和GDataXML。这篇文章使用了NSXMLParser。解析 XML 通常有两种方式,DOM 和 SAX:DOM解析XML时,读入整个XML文档并构建一个驻留内存的树结构(节点树),通过遍历树结构可以检索任意XML节点,读取它的属性和值。而且通常情况下,可以借助XPath,直接查询XML节点。SAX解析XML,是基于事件通知的模式,一边读取XML文档一边处理,不必等整个文档加载完之后才采取 阅读全文
posted @ 2013-09-03 13:00 李小见 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 移动互联网时代,网络通信已是手机终端必不可少的功能。我们的应用中也必不可少的使用了网络通信,增强客户端与服务器交互。这一篇提供了使用NSURLConnection实现http通信的方式。 NSURLConnection提供了异步请求、同步请求两种通信方式。1、异步请求 iOS5.0 SDK NSURLConnection类新增的sendAsynchronousRequest:queue:completionHandler:方法,从而使iOS5支持两种异步请求方式。我们先从新增类开始。1)sendAsynchronousRequestiOS5.0开始支持sendAsynchronousReque 阅读全文
posted @ 2013-09-03 12:58 李小见 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 1.BlockBlock封装了一段代码,可以在任何时候执行。Block可以作为函数的参数,或者函数的返回值,而其本身又可以带输入参数或返回值。它和传统的函数指针类似,但是有区别:block是inline(内联函数)的,并且默认情况下它对具备变量是可读的。苹果官方建议尽量多用block。在多线程、异步任务、集合遍历、集合排序、动画转场的很多。2.Block的使用方法一:1.定义block,这个block相当于函数//返回类型(^Block名称)(参数) int (^Sum) (int, int) = ^(int a,int b){ return a + b; }; 2.调用代码块int a =. 阅读全文
posted @ 2013-09-03 12:37 李小见 阅读(848) 评论(0) 推荐(0) 编辑
摘要: 1.Procotol简单来说就是一系列方法的列表,其中声明的方法可以被任何类实现。这种模式一般称为代理(delegation)模式。在iOS和OSX开发中,Apple采用了大量的代理模式来实现MVC中View(UI控件)和Controller(控制器的分离)。2.Procotol的使用@protocol Study //默认是@require -(void)test3; //@required表示必须实现的方法 //虽然是必须实现,但是编译器并不强求某个类进行实现 @required -(void)test; -(void)test1; //@optional表可选的(可... 阅读全文
posted @ 2013-09-03 12:35 李小见 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 1.Category概念OC提供了一种与众不同的方式—Category,可以动态的为已经存在的类添加新的行为(方法,不能添加成员变量)。这样可以保证类的原始设计规模最小,功能增加在逐步扩展。使用Category对类进行扩展时,不需要创建子类。Category使用简单的方式,实现了类的相关方法模块化,把不同的类方法分配到不同的分类文件中。2.Catogory的使用方法Student+test.h文件#import "Student.h" // ()代表一个分类,()中的test代表分类的名称 @interface Student (test) //只能扩展方法,不能添加成员 阅读全文
posted @ 2013-09-03 12:32 李小见 阅读(185) 评论(0) 推荐(0) 编辑