- 浏览: 424629 次
- 性别:
- 来自: 北京
-
最新评论
-
rkikbs:
有下载地址么?
我的iOS视频开放了,欢迎大家在线观看 -
wjpiao:
支持支持!
我的iOS视频开放了,欢迎大家在线观看 -
关东升:
wwwang89 写道关老师,你好 ,请问:我的服务器端是用j ...
iOS网络编程-ASIHTTPRequest框架同步请求 -
wwwang89:
关老师,你好 ,请问:我的服务器端是用java写的,不是.ne ...
iOS网络编程-ASIHTTPRequest框架同步请求 -
关东升:
crowning_2008 写道关老师 好!你好
iOS开发那些事-关于性能优化–选择nib还是故事板的讨论
文章列表
我的iOS视频开放了,欢迎大家在线观看,就是版本有些老,希望对有需要的同学有帮助(高清的)
iPhone与iPad开发实战--精通iOS开发(37讲)
http://v.51work6.com/courseInfoRedirect.do?action=courseInfo&courseId=240566
iPhone与iPad开发实战--iOS经典应用剖析(30讲)
http://v.51work6.com/courseInfoRedirect.do?action=courseInfo&courseId=241038
版本:xcode3.25,ios4.2
工具: ...
服务器端Bonjour服务发布成功之后,客户端可以通过NSNetService解析服务,解析成功后,可以获得通讯的数据细节,如:IP地址、端口等信息。
首先需要实例化NSNetService对象代码如下:
-(id)init {
_service = [[NSNetService alloc] initWithDomain:@”local.”
type:@”_tonyipp._tcp.” name:@”tony”];
[_service setDelegate:self];
//设置解析地址超时时
[_service resolveWithTime ...
客户端我们使用iPhone应用程序,画面比较简单。点击发送按钮,给服务器发送一些字符串过去。点击接收按钮就会从服务器读取一些字符串,并且显示在画面上。
有关客户端应用的UI部分不再介绍了,我们直接看代码部分,Socket客户端可以采用CFStream或NSStream实现,CFStream 实现方式与服务器端基本一样。本例我们采用NSStream实现。NSStream实现采用Objective-C语言,一些 面向对象的类。
下面我们看看客户端视图控制器ViewController.h
#import <CoreFoundation/CoreF ...
使用Socket进行C/S结构编程,连接过程
服 务器端监听某个端口是否有连接请求。服务器端程序处于堵塞状态,直到客户端向服务器端发出连接请求,服务器端接受请求程序才能向下运行。一旦连接建立起 来,通过Socket可以获得输入输出流对象。借助于输入输出流对象就可以实现与客户端的通讯,最后不要忘记关闭Socket和释放一些资源(包括:关闭 输入输出流)。
客户端流程是先指定要通讯的服务器IP地址、端口和采用的传输协议(TCP或UDP),向服务器发出连接请求,服务器有应答请求之后,就会建立连接。之后与服务器端是一样的了。
在iOS中,客户端Socket编程可以使用的技术有三种:
1 ...
第三方的等待指示器,MBProgressHUD就是第三方提供的等待指示器框架。下面是MBProgressHUD提供的等待指示器样式,它们基 本可以分为:未知结束时间和已知结束时间两大类等待指示器,在MBProgressHUD中可以为等待指示器添加标签和详细标签
MBProgressHUD的下载地址是https://github.com/matej/MBProgressHUD,我们将下载的源 文件中的MBProgressHUD.h和MBProgressHUD.m拷贝到自己的工程中,MBProgressHUD依赖的框架 有:Foundation.framework、U ...
实例:请求队列
我们通过一个例子介绍一下请求队列使用,我们设计了一个应用,用户点击GO按钮从服务器同时下载两张图片显示在画面中。
我们直接看看主视图控制器ViewController.h代码如下:
#import “ASIHTTPRequest.h”
#import “ASINetworkQueue.h”
#import “NSNumber+Message.h”
#import “NSString+URLEncoding.h”
@interface ViewController : UIViewController
@propert ...
我们运行程序,如果网速很慢,查询的时候会一直黑屏,直到请求结束画面才出现,这样用户体验很不好。因此同步请求一般只是在某个子线 程中使用,而不在主线程中使用。异步请求的用户体验要比同步请求好,因此一般情况下异步请求用的很多。等待过程中在状态栏上会出现网络等待指示器的经典旋 转小图标,而使用ASIHTTPRequest异步请求就实现这些效果,不用自己额外编写代码。
ASIHTTPRequest 和ASIFormDataRequest两个请求类都可以发送异步请求,ASIFormDataRequest继承了 ASIHTTPRequest异步请求方法,所以我们重点介绍ASIHTTPRequest的 ...
在ASIHTTPRequest框架中与HTTP请求相关的类有:ASIHTTPRequest和ASIFormDataRequest,其中最常用的是ASIHTTPRequest,ASIFormDataRequest是ASIHTTPRequest的子类,ASIFormDataRequest可以发送类似与HTML表单数据,也可以上传数据,默认采用POST请求方法。也可以其它的HTTP请求方法。它们都可以进行异步或同步请求。下面我们从最简单的GET同步请求介绍。1、实现GET同步请求实现GET同步请求使用最基本请求类ASIHTTPRequest就可以了。我们还是使用MyNotes应用为例,只考虑查询功能 ...
ASIHTTPRequest框架是优秀的第三方Objective-C的HTTP框架,支持Mac OS X和iOS下的HTTP开发。技术支持网站是http://allseeing-i.com/ASIHTTPRequest/。具有如下优点: 支持下载数据放在内存或本地文件 容易访问请求和应答HTTP header 支持Cookie 支持GZIP请求或应答 支持缓存 支持同步或异步请求 支持HTTPS 但ASIHTTPRequest框架不支持ARC,如果在ARC下开发配置起来有点麻烦。本章我们介绍的实例是基于ARC下开发的。安装和配置ASIHTTPRequest框架 首先下载地址https://git ...
上篇博客提到同步请求,同步请求用户体验不好,并且介绍了在同步方法上实现异步,事实上iOS SDK也提供了异步请求的方法。异步请求会使用NSURLConnection委托协议NSURLConnectionDelegate。在请求不同阶段 会回调委托对象方法。NSURLConnectionDelegate协议的方法有:
connection:didReceiveData: 请求成功,开始接收数据,如果数据量很多,它会被多次调用;
connection:didFailWithError: 加载数据出现异常;
connectionDidFinishLoading: 成功完成加载数据,在conne ...
iOS SDK为HTTP请求提供了同步和异步请求两种不同的API,而且可以使用GET或POST等请求方法。我们先了解其中最为简单的同步GET方法请求。
为了学习这些API的使用我们还是选择第3章MyNotes“备忘录”应用实例,与第3章不同的是数据来源于服务器端,而不是本地的Notes.xml(或Notes.json)文件。
首先实现查询业务,查询业务请求可以在主视图控制器MasterViewController类中实现,其中MasterViewController.h代码如下:
#import <UIKit/UIKit.h>
#import “NSS ...
书接上回提出的Git在Xcode中的配置与使用常见问题4个问题
问题1,如何在Xcode中创建代码库,并添加和提交代码到代码库?
问题2,如何在Xcode中提交推送给远程服务器代码库?
问题3,如何在Xcode中克隆远程服务器代码库到本地?
问题4,如何使用Xcode获取远程代码库数据,并解决冲突问题?
1、问题1
创建代码库有两种方式,一种是新建工程时候创建,另一种是把现有的工程拷贝到代码库下,再初始化代码库。
如果是新建工程时候创建,在保存文件时候可以选择是否创建,如果勾选“Create local git repository for this project” ...
很多Git命令都是在命令行下运行的,命令行下管理Git有很多优点不用多说。但最大的缺点是要求用户记住这些命令。因此Git图形界面还是很受一 些用户欢迎的,其中Xcode作为集成开发环境工具,也提供了一定Git图形界面功能。但是要想在Xcode中使用Git管理工程代码还想需要进行一些配 置,然后才能使用。
如果我们是使用Xcode 4创建的一个iOS工程,在终端的命令行中提交代码时候,可能会出现下面的部分信息:
create mode 100644 HelloWorld/HelloWorld.xcodeproj/project.xcworkspace/contents.xcworkspace ...
故事板实现标签导航
用故事板技术实现标签导航模式。
使用“Tabbed Application”模版,创建一个名为 “TabNavigationStoryborad”的工程。勾选“Use Storyborads”、“Use Automatic Reference Counting”。创建完成之后打开MainStoryboard.storyboard。
三个Controller Scene 会有由一些线连接起来,这些线就是Segue,看到它是否想起了动画书中的“故事板”,事实上,iOS故事板起源于动画行业。故事板开始的一端是“Tab Bar Controller Scene”它是 ...
基于分页导航实现
在iOS 5之后,可以使用分页控制器(UIPageViewController)构建类似于电子书效果的应用,我们称为基于分页的应用。一个分页应用有很多相关的视图控制器
分页控制器(PageViewController)需要放 ...