NSOutputStream\NSInputStream】的更多相关文章

NSOutputStream-保存网络资源到本地 _filePath = [[NetworkManager sharedInstance] pathForTemporaryFileWithPrefix:@"Get"]; _fileStream = [NSOutputStream outputStreamToFileAtPath:self.filePath append:NO]; [_fileStream open];     2.进行网络请求,并返回网络的数据.   通过输出流对象,将…
NSStream 流是位数据通过通信路径的连续传送序列.它是单向的,从一个应用程序的角度,流可以是输入流(读操作流)或者输出流(写操作流),除了基于文件的流之外,其余的都是non-seekable的.一旦流数据被提供或者被使用,数据就不能够从流中获取到. Cocoa包括三种与流有关的类:NSStream,NSInputStream,NSOutputStream. NSStream是抽象类,它定义了流对象的基本接口和属性.NSInputStream和NSOutputStream是NSStream的…
一:输出流 #import "ViewController.h" @interface ViewController ()<NSURLConnectionDataDelegate> @property (weak, nonatomic) IBOutlet UIProgressView *progressView; @property (nonatomic, assign) NSInteger totalSize; @property (nonatomic, assign)…
一.小文件下载 NSURL *url = [NSURL URLWithString:@"http://120.25.226.186:32812/resources/images/minion_02.png"]; NSURLRequest *request = [NSURLRequest requestWithURL:url]; [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQue…
应用程序离不开数据的永久存储,有两种方式实现存储:数据库和文本文件. 作为存储管理器,最基本的功能就是增删改查了. CoreData 1.插入 AppDelegate *app = [[UIApplication sharedApplication] delegate]; NSManagedObjectContext *context = [app managedObjectContext]; NSManagedObject *newManagedObject = [NSEntityDescri…
NSOutputStream 创建一个NSOutputStream实例 - (nullable instancetype)initToFileAtPath:(NSString *)path append:(BOOL)shouldAppend; 参数一制定目标文件路径. 第二个参数shouldAppend如果传递的为YES,意味着每次往文件以流的方式写入都是拼接在内容结尾. 开启NSOutputStream 在写文件前需要先打开流. - (void)open; 如果初始化传入的目标文件路径的文件不…
[原]AFNetworking源码阅读(五) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇中提及到了Multipart Request的构建方法- [AFHTTPRequestSerializer multipartFormRequestWithMethod:URLString:parameters:constructingBodyWithBlock:error:],不过并没有深入研究,部分函数也只是简单地一笔带过.所以本篇文章从此入手,一方面把Multip…
承接上一篇AFNetworking 3.0 源码解读 总结(干货)(上) 21.网络服务类型NSURLRequestNetworkServiceType 示例代码: typedef NS_ENUM(NSUInteger, NSURLRequestNetworkServiceType) { NSURLNetworkServiceTypeDefault = 0, // Standard internet traffic NSURLNetworkServiceTypeVoIP = 1, // Voic…
这篇就讲到了跟请求相关的类了 关于AFNetworking 3.0 源码解读 的文章篇幅都会很长,因为不仅仅要把代码进行详细的的解释,还会大概讲解和代码相关的知识点. 上半篇: URI编码的知识 关于什么叫URI编码和为什么要编码,请看我转载的这篇文章 url 编码(percentcode 百分号编码) 给定一个URL:http://www.imkevinyang.com/2009/08/%E8%AF%A6%E8%A7%A3javascript%E4%B8%AD%E7%9A%84url%E7%B…
一.iOS的“伪后台”程序 首先,先了解一下iOS 中所谓的「后台进程」到底是怎么回事吧? Let me be as clear as I can be: the iOS multitasking bar does not contain "a list of all running apps". It contains "a list of recently used apps". The user never has to manage background t…
MFiLogo 前面我写了一篇文章<iOS App连接外设的几种方式>,其中EAP和NCM是都需要做MFi认证.对于苹果的MFI认证,对iOS开发的同学来说其实是一个比较陌生并且繁琐的topic,因为网上资料确实很少,百度Google几乎都查不到啥资料,而且MFi认证门槛比较高,流程比较复杂,周期很长.苹果对外提供的沟通渠道也不顺畅,邮件发过去杳无音信,电话从来都打不通. 本人最近两年都在做百度CarLife这个手机车机互联的产品,涉及到iOS app跟车机硬件的连接,所以对MFi认证略有接触…
Multipeer connectivity是一个使附近设备通过Wi-Fi网络.P2P Wi-Fi以及蓝牙个人局域网进行通信的框架.互相链接的节点可以安全地传递信息.流或是其他文件资源,而不用通过网络服务.此框架是在iOS7以后推出,旨在替代GameKit下的GKPeerPickerController通信.通过此框架我们可以直接连接同一网络下的设备,让其直接进行类似微信,qq那样的即时通讯效果. 原理 其中通讯的原理,是利用节点来进行广播服务(标示符),其他节点可以通过服务(标示符)发现广播.…
翻译自:http://www.raywenderlich.com/29948/backgrounding-for-ios (代码部分若乱码,请移步原链接拷贝) 自ios4开始,用户点击home按钮时,你可以将app设计为挂起状态.app在内存中,除非用户再次返回到app,否则该app暂停运行.都是这种情况吗? 当然不是,在一些例外的情况下,app仍然可以在后台保持运行.这篇文章将介绍如何以及何时应用(几乎)所有这些后台操作功能. 应用后台运行模式实际上有很严格的限制条件,在ios上实现真正的多任…
NSOperation: 1. 指定同一时间最大执行的操作数 queue.max…… 2. 设定队列中的任务时间的依赖关系 task1 依赖于 task2: task2 —> task1 3. 回到主线程(找到如何获取主队列的方式)[NSOperation mainQueue]: keyword: iOS main queue Socket: 网络中的两个程序通过双向的通讯,达到交换数据的目的. 发送(客户端):终端控制台 接收(服务器端):  终端控制台(sever.py) 资源:网页(www…
1. 搭建python服务器 这里我们用到python服务器Socket Server.如何运行Server?下面介绍 1)通过百度云下载文件 http://pan.baidu.com/s/1i5ybxg5 下载完成文件之后,可以看到倒数第三行的代码,reactor.listenTCP(12345, factory). 这里可以修改端口号12345. 2)然后我们运行文件. 首先,在mac机器上打开终端,在终端上到chatserver.py的文件目录下.然后输入命令:python chatser…
基于ios 例子WiTap 1.创建本地的服务并设置监听时间检测是否有设备连接. NSNetService * server = [[NSNetService alloc] initWithDomain:]; //[UIDevice currentDevice].name if(self.server != nil) { [self.server setDelegate:self]; //self.server.includesPeerToPeer = YES; [self.server pub…
资料来源 : http://github.ibireme.com/github/list/ios GitHub : 链接地址 简介 : A delightful iOS and OS X networking framework. 推荐参考 : http://afnetworking.com http://www.aiuxian.com/article/p-1537192.html 链接地址一. 文件目录 链接地址1. AFNetworking 目录内容 链接地址2. UIKit+AFNetwo…
#import "ViewController.h" @interface ViewController () <NSStreamDelegate, UITextFieldDelegate, UITableViewDataSource>{    NSInputStream       *_inputStream;      // 输入流    NSOutputStream      *_outputStream;     // 输出流        NSMutableArr…
http连接 :短连接,客户端,服务器三次握手建立连接,服务器响应返回信息,连接关闭,一次性的socket连接:长连接,客户端,服务器三次握手建立连接不中断(通过ip地址端口号定位进程)及时通讯,客户端 客户端之间经过 服务器中转的(漫游) ---------------------------------- 七层网络协议 OSI参考模式 TCP.IP参考模式___________________________________ 应用层 表示层 应用层 会话层 _________________…
原声socket NSInputStream 输入流(OC)NSOutputStream 输出流(OC)1:通过c语言的输入输出流CFReadStreamRef/CFWirteStreamRef(输入/输出流),IP地址,端口号,连接服务器.2:c语言输入输出流,强转oc输出输入流,3:通过给oc输入输出流,添加代理.添加到主运行循环.开启.4:监听连接状态,输入,输出流状态 ---->创建连接 ---->监听状态 ---->写入数据 ---->读取数据 =============…
文一 我从苹果文档中得知,一般的应用在进入后台的时候可以获取一定时间来运行相关任务,也就是说可以在后台运行一小段时间. 还有三种类型的可以运行在后以, 1.音乐 2.location 3.voip 文二 在IOS后台执行是本文要介绍的内容,大多数应用程序进入后台状态不久后转入暂停状态.在这种状态下,应用程序不执行任何代码,并有可能在任意时候从内存中删除.应用程序提供特定的服务,用户可以请求后台执行时间,以提供这些服务. 判断是否支持多线程 UIDevice* device = [UIDevice…
iOS面试题: 一:网络理论知识的理解 1:Internet物理地址和IP地址转换采用什么协议 ARP(Address Resolution Protocol)地址解析协议 2:Internet采用哪种网络协议?该协议的主要层次结构? TCP / ip  应用层.传输层.网络层.数据链接层 二:Object-C.iPhone的面试相关 1:什么是多态 多态:不同对象以自己的方式响应相同的消息的能力叫做多态. 2.你项目中用到什么设计模式 MVC模式.单例模式.委托模式.观察者模式 1)MVC模式…
在国庆这段时间里用零星的一些时间看了一下socket的学习资料,由于笔者偏向学习实用方面的内容,因此此篇文章涉及理论知识较少,主要是以实现思路(怎么做)为主,但在实现之前还是需要了解一些基础的理论知识(如果其中有误请指出) TCP是用socket来实现,或者说socket就是对TCP的封装,因此要想明白Socket连接,先要明白TCP连接. TCP(传输控制协议)(对应TCP的另一种协议是UDP协议,读者可自行查阅相关资料) 作用:建立连接,形成传输数据的通道 特点:在连接中进行大数据传输(数据…
1 局域网群聊软件 1.1 问题 UDP协议将独立的数据包从一台计算机传输到另外一台计算机,但是并不保证接受方能够接收到该数据包,也不保证接收方所接收到的数据和发送方所发送的数据在内容和顺序上是完全一致的. UDP广播就是建立于UDP协议上的数据传输,当网络中的某一台计算机向交换机或路由发送一个广播数据时,交换机或路由则会将此广播数据发送到其节点下的所有接收者.本案例使用第三方Socket编程框架AsyncUdpSocket框架,基于UDP广播实现一个局域网群聊软件,一个基于UD广播的聊天室程序…
Socket ********************************************* 简单理解Socket 就是网络连接,可以实现两个点之间的数据通讯. •Socket允许使用长连接,允许应用程序运行在异步模式(提高效率),只有在需要的时候才接收数据 •使用Socket,可以只传送数据本身而不用进行XML封装,大大降低数据传输的开销      在(JSON)之前出现的 iOS中常用的两种Socket类型 Ø流式Socket(SOCK_STREAM):流式是一种面向连接的Soc…
如果你的应用程序需要在设备休眠的时候还能够收到服务器端发送的消息,那我们就可以借助VOIP的模式来实现这一需求.但是如果的应用程序并不是正真的VOIP应用,那当你把你的应用提交到AppStore的时候基本上会被苹果Reject. 但是如果你的应用是企业内部发布的或者你只想了解其中的原理,那该文也许对您会有所帮助. 一.在iOS中如何应用VOIP 大多数VOIP应用需要设置后台audio 应用去传递音频,因此你应该设置audio 和voip两个键值.如果只是想通过VOIP来达到socket在休眠状…
http://www.cocoachina.com/bbs/read.php?tid=149564 文一 我从苹果文档中得知,一般的应用在进入后台的时候可以获取一定时间来运行相关任务,也就是说可以在后台运行一小段时间.   还有三种类型的可以运行在后以,   1.音乐   2.location   3.voip     文二     在IOS后台执行是本文要介绍的内容,大多数应用程序进入后台状态不久后转入暂停状态.在这种状态下,应用程序不执行任何代码,并有可能在任意时候从内存中删除.应用程序提供…
工程中使用tcp长连接来和服务端进行数据传输,在IOS平台上,由于苹果的后台机制,会有以下问题: 当程序退到后台的时候,所有线程被挂起,系统会回收所有的socket资源,那么socket连接就会被关闭,因此无法再进行数据的传输: 解决方法: 通过设置以下属性可以保持socket连接和数据的继续传输 1.需要在Info.plist文件中添加UIBackgroundModes中的VOIP键值: 2.设置流属性 CFReadStreamRef和CFWriteStreamRef通过如下方法设置kCFSt…
转:http://blog.csdn.net/andy_jiangbin/article/details/17114989 接着前面写. 本帖先讲AFURLConnectionOperation,它是AFNetworking中是所有请求网络的基类.它是基于NSURLConnection实现的,所以在此类里实现了NSURLConnection的delegate 方法: - `connection:didReceiveResponse:` - `connection:didReceiveData:`…
在IOS后台执行是本文要介绍的内容,大多数应用程序进入后台状态不久后转入暂停状态.在这种状态下,应用程序不执行任何代码,并有可能在任意时候从内存中删除.应用程序提供特定的服务,用户可以请求后台执行时间,以提供这些服务. 判断是否支持多线程 UIDevice* device = [UIDevice currentDevice]; BOOL backgroundSupported = NO; if ([device respondsToSelector:@selector(isMultitaskin…