回调、通知与块编程:iOS开发中的关键技术
1. 异步连接与辅助对象
在开发中,使用 NSURLConnection 从Web服务器获取数据时,同步连接存在一些问题。同步连接会阻塞主线程,在等待数据时用户界面会无响应,并且无法处理服务器要求用户名和密码等回调情况。因此,更常用的是异步 NSURLConnection 。
异步连接中,数据是分块传输的,会有各种与连接相关的事件,如数据块到达、服务器要求凭证、连接失败等。为了管理这种复杂的连接,需要使用辅助对象。在 Callbacks 程序中, BNRLogger 实例将作为 NSURLConnection 的辅助对象,也就是其委托。
以下是在 main.m 中创建 NSURLConnection 并设置委托的代码:
#import <Foundation/Foundation.h>
#import "BNRLogger.h"
int main (int argc, const char * argv[])
{
@autoreleasepool {
BNRLogger *logger = [[BNRLogger alloc] init];
NSURL *url = [NSURL URLWithString:
@"http://www.gutenbe
超级会员免费看
订阅专栏 解锁全文
985

被折叠的 条评论
为什么被折叠?



