摘要: 要编写社交网络客户端程序,可以大体上分为4个主要的步骤下面我们按照这个流程,介绍一下:1、引入Accounts和Social框架工 程中需要引入Accounts和Social框架,Accounts框架中有进行用户账户认证所需类,Social框架中SLRequest类是我们所需 要的。添加具体步骤是选择工程中的TARGETS→WeiBo→BuildPhases→LinkBinaryWithLibraries,选择 右下角的“+”按钮,打开框架和库选择对话框。分别选择Social.framework添加,再选择Accounts.framework添加。2、用户账户认证用 户账户认证使用ACAcco 阅读全文
posted @ 2013-05-10 11:52 智捷iOS课堂 阅读(677) 评论(0) 推荐(0) 编辑
摘要: iCloud文档在保存的过程中难免会发生冲突,我们必须要有一套解决冲突的策略。策略的采用要根据用户的需求而定,有的简单有的复杂,最简单的是 直接使用当前版本覆盖冲突版本。复杂的策略,例如:如果是两个文本文件冲突,可以将两个冲突点列出来,让用户来判断再进行保存。我们采用的策略是使用当前版本覆盖以前的版本。解决冲突首先需要在updateUbiquitousDocuments:方法中注册UIDocumentStateChangedNotification通知://当iCloud中的文件变化时候调用- (void)updateUbiquitousDocuments:(NSNotification *) 阅读全文
posted @ 2013-05-06 09:20 智捷iOS课堂 阅读(637) 评论(0) 推荐(1) 编辑
摘要: iCloud文档存储编程相对键值数据存储而言比较复杂,涉及到自定义文档类、获得iCloud文档目录、查找Ubiquity容器中的文档、保存文档和解决文档冲突等内容。实例:iCloud文档存储编程设计实例介绍一下iCloud文档存储编程过程,画面中有一个文本框和一个按钮控件,在设备1输入内容,点击“保存数据”按钮,将数据保存iCloud服务器。右图是设备2画面,过几秒钟后设备2上会读取iCloud服务器端数据,并显示在文本框中。配置Xcode工程编写iCloud文档存储编应用程序也需要在Xcode工程中进行一些配置,选择TAGETS→MyNotes→Summary→Entitlements在图中 阅读全文
posted @ 2013-05-02 08:37 智捷iOS课堂 阅读(432) 评论(0) 推荐(0) 编辑
摘要: iCloud键值数据存储设计iCloud键值数据存储编程实例,画面中有两个开关控件,左图是设备1点击“设置iCloud数据”按钮,将控件状态保存到iCloud服务器。右图是设备2画面,过几秒钟后设备2收到变更通知。配置Xcode工程使用Xcode创建一个iOS工程,工程创建好之后,选择TAGETS→MyNotes→Summary→Entitlements,我们可以在这里配置授权信息。然后我们还需要应用设置代码签名标识,代码签名标识需要选择这个配置概要文件的。选择TAGETS→MyNotes→CodeSigningIdentity设置完成之后可以开始编码工作了。代码实现首先是需要注册NSUbiq 阅读全文
posted @ 2013-04-28 09:46 智捷iOS课堂 阅读(411) 评论(0) 推荐(0) 编辑
摘要: 配置iCloud开发iCloud应用一方面需要准备真实的iOS设备,另一方面还需要有iOS开发者账号,使 用iOS开发者账号登录到iOS开发中心的配置门户网站(iOSProvisioningPortal网址为 https://developer.apple.com/ios/manage/overview/index.action),可以为应用做一些与 iCloud有关的配置工作。这些工作包括:创建AppID首先需要为应用创建AppID,AppID是针对应用的注册,该过程是在配置门户网站完成的,开发者登录成功之后点击左边导航菜单的AppIDs点击“NewAppID”按钮信息输入后点击“Submi 阅读全文
posted @ 2013-04-26 10:08 智捷iOS课堂 阅读(512) 评论(0) 推荐(0) 编辑
摘要: 低耦合企业级系统架构设计我们往往称JavaEE或.Net开发的产品为“系统”,而移动平台(主要是:Android、iOS和WindowPhone)开发的产品为“应用”。“系统”比较复杂,需要架构设计,而“应用”相对比较简单,这是不是意味着我们不需要考虑架构问题呢?我 们首先了解一下企业级系统架构设计。软件设计的原则是提高软件系统的“可复用性”和“可扩展性”,系统架构设计采用层次划分方式,这些层次之间是 松耦合的,层次的内部是高内聚的。降低耦合是软件设计的目标,能够设计出低耦合的系统,就意味着我们的系统具有“可复用性”和“可扩展性”。通用低耦合 JavaEE和.Net企业级系统架构图。表示层是用 阅读全文
posted @ 2013-04-24 09:27 智捷iOS课堂 阅读(1505) 评论(0) 推荐(0) 编辑
摘要: 有的时候应用需要能够在iPhone和iPad上运行,当然我们可以选择做两个完全不同的工程,然后共用一些类,但是我们也可以只创建一个工程,然后编译生成一个产品,这个产品能够自适应iPhone和iPad设备,然后在AppStroe发布的时候,它会有两套不同的截图展示给用户。AppStore上的Evernote应用,它有两套截图iPhone和iPad,这说明Evernote就是自适应iPhone和iPad设备的。我们来做一个名为UniversalSample的自适应iPhone和iPad设备的工程。首先,在创建时候选择Devices为“Universal”,我们以前一直选择的是iPhone,如果开发 阅读全文
posted @ 2013-04-22 16:16 智捷iOS课堂 阅读(512) 评论(0) 推荐(0) 编辑
摘要: 关东升老师的iOS视频开放了,欢迎大家在线观看,就是版本有些老,希望对有需要的同学有帮助(高清的)iPhone与iPad开发实战--精通iOS开发(37讲)http://v.51work6.com/courseInfoRedirect.do?action=courseInfo&courseId=24... 阅读全文
posted @ 2013-04-18 10:56 智捷iOS课堂 阅读(2469) 评论(10) 推荐(2) 编辑
摘要: 服务器端Bonjour服务发布成功之后,客户端可以通过NSNetService解析服务,解析成功后,可以获得通讯的数据细节,如:IP地址、端口等信息。首先需要实例化NSNetService对象代码如下:-(id)init {_service = [[NSNetService alloc] initWithDomain:@”local.”type:@”_tonyipp._tcp.” name:@”tony”];[_service setDelegate:self];//设置解析地址超时时[_service resolveWithTimeout:1.0];_services = [[NSMutab 阅读全文
posted @ 2013-04-17 16:07 智捷iOS课堂 阅读(1018) 评论(0) 推荐(1) 编辑
摘要: 客户端我们使用iPhone应用程序,画面比较简单。点击发送按钮,给服务器发送一些字符串过去。点击接收按钮就会从服务器读取一些字符串,并且显示在画面上。有关客户端应用的UI部分不再介绍了,我们直接看代码部分,Socket客户端可以采用CFStream或NSStream实现,CFStream 实现方式与服务器端基本一样。为了给读者介绍更多的知识,本例我们采用NSStream实现。NSStream实现采用Objective-C语言,一些 面向对象的类。下面我们看看客户端视图控制器ViewController.h#import <CoreFoundation/CoreFoundation.h&g 阅读全文
posted @ 2013-04-15 11:47 智捷iOS课堂 阅读(1374) 评论(2) 推荐(0) 编辑