自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

梦浮生清月夜

夫天地者,万物之逆旅也;光阴者,百代之过客也.而浮生若梦,为欢几何?

  • 博客(39)
  • 收藏
  • 关注

翻译 webRTC的用户体验

webRTC的用户体验介绍国内这方面资料比较少,查询了一些国外资料,进行一些总结,希望对大家有用.参考博客:介绍我们使用WebRTC的主要目的是应用它的如下如下几个功能 音视频捕捉视频显示音视频压缩网络通信.webrtc遵循开放的网络,实时的,易访问的跨平台设计原则,那么他是如何工作的? webrtc有三个主要组成:getUserMedia:允许浏览通过设备的麦克风和摄像头捕捉medi

2016-05-10 17:31:36 2077

翻译 WebRTC ON iOS

WebRTC 在 iOS中的使用原文地址WebRTC是一个面向iOS和安卓的高层级的API的开源项目.在这篇文章我们将研究如何开始建立WebRTC到你的iOS程序. 我们建议使用本地的WebRTC库,但你可以看看OpenWebRTC项目. 我们不会讲述如何建立使用signaling ,而是突出在iOS浏览器实现的异同. 正如你将看到的,这个API是在iOS和web上是平行的.如果你正在寻找一个更基

2016-04-12 09:32:35 3753 2

原创 socket.io简介

Socket.IO简介1.概述Socket.IO是一个完全由JavaScript实现、基于Node.js、支持WebSocket的协议用于实时通信、跨平台的开源框架,它包括了客户端的JavaScript和服务器端的Node.js.2.支持Socket.IO除了支持WebSocket通讯协议外,还支持许多种轮询(Polling)机制以及其它实时通信方式,并封装成了通用的接口,并且在服务端实现了这些实时

2016-04-01 10:12:42 5013

原创 isbx_apprtc_在ios的使用

ISBX apprtc 在iOS的使用1. 把WebRTC视频聊天集成到你的app中项目目录 - 终端中输入 pod install AppRTC2. 从这里你可以找到ARTCVideoChatViewController类 ,接下来集成的详细步骤:1. 初始化SSL peer 连接WebRTC可以通过SSL安全通信. 如果你要测试https,这是必须的. 你要修改你的appDelegate.m如下

2016-03-31 10:14:17 1971

翻译 socket.io_-ios使用

Socket.io -iossocket.io-ios简介 你可以使用socket.io通过swift编写在iOS和OS的客户端上. 同时保持简单表现良好的JavaScript客户端.import Foundationlet socket = SocketIOClient(socketURL: "localhost:8880")socket.on("important message") {d

2016-03-31 10:13:40 13510 3

翻译 译:WebRTC视频通信

原文:http://www.html5rocks.com/en/tutorials/webrtc/infrastructure/ WebRTC可以进行p2p之间的通信,但是仍需要服务支持. 1. signaling服务: 客户端之间交换元数据来建立通信. 2. 穿透NATs和防火墙. 在本文中,我们想你展示如何构建一个signaling服务,如何用STUN/TURN

2016-03-30 10:42:32 3690

原创 UICollectionview

UICollectionView类似于UItableView继承自UIScrollView. 区别在于:UICollectionView有其独特的布局特性. 如图,可以看出组成cells: 用于展示主体内容,尺寸可以各不相同.Supplementary Views : 追加视图,类似于UITableView的每个Section的Header/Footer View.Decoration Vi

2016-03-28 16:01:16 855

原创 ios事件处理-

iOS事件处理-用户使用App产生的事件及响应方法:iOS中不是任何对象都能处理事件,只有继承UIResponder的对象才能接受并处理事件–称为响应者对象;例如:UIApplication,UIView,UIViewController. 1.触摸事件-touch- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;-

2016-03-11 20:59:30 725

转载 iOS动画

iOS核心动画概论目标:1. 学会使用图层精简非交互式绘图;2. 通过核心动画创建基础动画,关键帧动画,动画组,转场动画;3. 学习使用UIView对这些动画简化操作的装饰方法.1. CALayer1.1 简介.CALyer包含在QuartzCore框架中,这是一个跨平台的框架(iOS 和 MAC OSX);在使用Core Animation开发动画的本质就是将CALayer中的内容转化为位图从而供

2016-03-11 20:59:00 671

转载 数据存储-OC

iOS数据存储1. 概论在iOS开发中数据存储的方式可以归纳为两类: 存储文件 和 存储到数据库.2.文件存储2.1 沙盒文件下载思路: 客户端发送请求->服务器响应,返回NSData->客户端接受数据; 沙盒机制(sandbox):每个iOS应用都有自己的应用沙盒,即文件系统目录.属于封闭式的,所有APP都在单独的沙盒中运行;为了:1⃣️完美的用户体验需要对跨应用程序进行整合统一;2⃣️封

2016-03-05 16:50:01 853

原创 ios事件处理-

iOS事件处理-用户使用App产生的事件及响应方法:iOS中不是任何对象都能处理事件,只有继承UIResponder的对象才能接受并处理事件–称为响应者对象;例如:UIApplication,UIView,UIViewController. 1.触摸事件-touch- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;-

2016-03-05 16:40:50 1128

原创 iOS绘图与滤镜

iOS绘图概述:在iOS中可以很容易开发出绚丽的界面效果,是基于两大图形绘制框架-Quartz 2D绘制2D图形和Core Image中强大的滤镜功能.1.Quartz 2D-二维绘图引擎简介:是iOS常用的绘图框架,可以跨平台,经包装的函数库,属于Core Graphics框架一部分.Quartz 2D在UIKIt中也有很好的封装和集成,平时开发所用到得UIKit中组件都是由Core Graphi

2016-03-05 16:39:22 1695 1

原创 iOS多控制器-视图切换.

多控制器-视图切换.1.概述.在iOS开发中,视图的切换是很频繁的,常用的视图切换有三种:UITabBarController 以平行的方式管理视图,各个视图之间关系不大;每个加入的视图都会进行初始化,不论当前显不显示在界面上.所以相对比较占内存.UINavigationController (PUSH) 以栈的方式管理视图,各个视图的切换就是压栈和出栈操作,出栈后的视图即被销毁.moda

2016-03-05 16:38:24 6635

原创 iOS动画

iOS核心动画概论目标:1. 学会使用图层精简非交互式绘图;2. 通过核心动画创建基础动画,关键帧动画,动画组,转场动画;3. 学习使用UIView对这些动画简化操作的装饰方法.1. CALayer1.1 简介.CALyer包含在QuartzCore框架中,这是一个跨平台的框架(iOS 和 MAC OSX);在使用Core Animation开发动画的本质就是将CALayer中的内容转化为位图从而供

2016-03-05 16:37:26 577

原创 UIWebView

UIWebViewiSO内置的浏览器控件,一些app中不需要打开其他浏览器就能看新闻之类的页面,就是通过这个控件实现的.同样可以也加载本地资源(html,pdf,docx,txt等)WebView的实现//1. 添加web view_webView = [[UIWebView alloc] initWithFrame:CGRectxx];[self.view addSubview:_webVie

2016-03-05 16:35:08 644

原创 AFNetworking框架使用

AFNetWorking框架封装的connection 和session (task 代理).传递completionHandler( access 和error block )默认支持序列化和反序列化json,xml需要自己解析封装了reachability 判断网络连接;支持HTTPS;下载:终端输入 git clone url论坛 Stack OverflowAFN的使用封装

2016-03-05 16:33:11 397

原创 网络-NSURLSession应用和原理

网络-NSURLSession1. 简介NSRULConnection使用runloop来达到异步下载的,原理:Runloop保证重要的任务流畅执行; 分配固定时隙,实现单一线程异步; connection 应用了runloop ,苹果不推荐使用底层设计理念,所以用封装更好NSURLSession;NSURLSession 提供了配置会话缓存,协议,cookie和证书能力,这使得网络架构

2016-03-05 16:32:23 4625

原创 NSRULConnection网络应用

网络开发的使用-NSConnection1.模拟登录登录请求.get和post区别//get 速度快,不安全。 获取数据,传输少量的数据,不适合传输密码等隐私数据//post 速度慢,相对安全。提交数据,传输大量数据,或隐私数据虽然都可以用作登录请求,但是为了安全使用post登录步骤://1. 创建 设置 post请求 NSURL *url = [NSURL URLWithString:

2016-03-05 16:31:23 530

原创 NSRULConnection网络应用原理

获取网络数据原理.1. 请求两种方式对比NSData方式: 可以根据URL直接获取JSON数据, 但是无法设置缓存策略,超时时长等求情头属性;NSURLConnection: 可以异步的发送请求, 通过NSMutableURLRequest 自定义请求头 来设置缓存策略和等待时长,请求行等;自定义请求头可以实现很多功能,我们已经学过两个请求头Connection和User-Agent分别可

2016-03-05 16:29:00 628

原创 网络基本原理和加密

数据加密1. base64编码加密一种简单的加密方式,本质是将任意的二进制数据编码成字符串,在网络上传输.//终端命令base64编码base64 xx.png -o abc.txt 编码文件echo -n "Man" | base64 编码字符串base64解码base64 abc.txt -o xx.png -D 解码文件echo -n "TWFu" |

2016-03-01 14:45:45 2373

原创 多线程3-NSOperation

NSOperation1. 简介OC语言基于CGD的面向对象装.提供了一些GCD不好实现的功能,苹果推荐使用;同样比比关系线程和生命周期.NSOperation是一个抽象类,不能直接使用(方法没有实现),是用来约束子类都具有共同的属性和方法. 主要使用NSOperation的子类:NSInvocationOperationNSBlockOperation自定义Operation2. 简单使

2016-03-01 14:37:04 408

原创 多线程开发2 -GCD

GCD1.简介全称是Grand Central Dispatch,可译为“牛逼的中枢调度器”,基于C语言开发的多线程并发的面向过程技术;GCD是苹果为多核的并行运算提出的解决方案,使它对于多核运算更加有效。可以自动管理线程的生命周期;抽象层次更高,我们只需告诉它做什么,不需要编写多余的线程管理代码;2.核心概念用法: 将任务添加到队列,并且指定执行任务的函数 即可;任务:执行什么操作 (bloc

2016-02-25 20:25:33 437

原创 多线程开发

多线程开发1. 概览开发过程中应该尽可能减少用户等待时间,将耗时操作放到后台去执行,给用户更好的体验;但是无论何种语言开发的程序最终都是转换成汇编语言进而解释成机器码执行;而机器码是按顺序执行的,一个复杂的多步操作只能一步步按顺序逐个执行;要改变这种状况可以从两个角度出发:对于单核处理器:可以将多个步骤放到不同的线程,这从而可以在同一时间,执行多个任务;**原理是CPU在多个线程之间快速切换,(一

2016-02-25 18:36:02 703

原创 屏幕适配

屏幕适配1.目标i4-320*480 ———– 计算FrameiPad-768*1024 ——–Autoresizing — 让控件随父控件拉伸而拉伸 (不能同级别间控件)i5-320*568 ————Autolayout —— 可以约束各个控件间位置(不能用于不同屏幕)i6-375*667——————SizeClass—–根据不同设备不同约束(autoLayout).i6s-414*736

2016-02-25 18:33:22 434

原创 UITableView

1. UITableView展示表格数据特征:继承自UIScrollView,可以滚动.含常规代理和数据源代理(dataSource)来监听操作.属性:含两种展示样式:根据sections数决定. UITableViewStylePlain 单组显示UITableViewStyleGrouped 多组显示.三个基本数据:从遵守数据源协议的控制器中实现协议方法来获取.(必须实现的) 多

2016-02-25 18:31:34 604

原创 QQ聊天界面

QQ聊天界面.注意点:UIView没有背景图片属性,添加UIImageView再设置.UITableView的背景会被cell挡住,需要显示则要把cell设置一下.图片拉伸不变型-平铺样式.美工图片常用处理方式:如下:+ (UIImage *)resizableImage: (NSString *)name { UIImage *normal = [UIImage imageName

2016-02-25 18:29:15 993

原创 图片浏览器和九宫格

1. 图片浏览器问题:需求:是做一个按钮控制图片和文本变化的功能.要求:代码复用性,封装性:使监听点击的方法中:只要结果.实现过程在另外定义的方法中.思路:storyboard中简单搭建布局.之后连接需要的属性和方法.(IB)图片数据与文本数据等一般是plist文件直接提供,所以需要加载.出于能效考虑,在出现需要使用数据时才加载,称为懒加载–改写存储数据的集合(实例变量)的get方法.例:

2016-02-25 18:27:31 1054

原创 UI基本三控件

1.UIkit框架UI:User Interface 用户跟机器交互的接口.控件:每个UI对象,控件就是UI的类和对象就是昵称. UIView称为视图/控件/组件.UIKit框架的基类,类似一个容器,能够容纳其他UIView或其子类. UIView类定义了屏幕上得一个矩形区域 和 管理区域的接口方法.运行时,一个控件(view object) 负责它区域的交互和渲染.常见属性:@prope

2016-02-25 17:16:38 746

原创 UI控件学习

1.实例:超级猜图.思路:根据死的控件用拖控件和活得控件代码创,或者多个死的有顺序的也可用代码创建,然后分区域设计.MVC思想.管理数据与视图面向对象-本质 万物间的联系.根据对象间的关系来设计控件功能与属性.有用的功能: View设置不可操作,其包含的子控件也会不可操作.self.view.userInteractionEnabled = NO;有的视图上控件需要重组,必须先删除原来

2016-02-25 17:09:16 334

原创 KVC与KVO

1. 概述ObjC主要基于Smalltalk进行设计, 因此它有很多类似Ruby,Python的动态特性, 例如动态类型,动态加载,动态绑定等. 因此可以ObjC中可以使用键值编码KVVC 和 键值监听KVO; 基于观察者思想:一个目标对象 管理所有依赖于它的 观察者对象;并在自身的状态改变时 主动通知观察者对象. 通知通告调用各观察着对象所提供的接口方法实现, 观察者模式 为了解耦;1. K

2016-02-25 17:06:26 429

原创 block与协议-代理

1.block类型-存储代码块的类型在异步编程时常需要进行函数回调,在C#中会用匿名委托或者lambda表达式讲一个操作作为参数进行传递. ObjC中是使用对于闭包的实现,在块状中我们可以持有或引用局部变量. 同时利用Block可以将一个操作作为参数进行传递;blcok用法:定义:返回值类型 ( ^变量名 ) ( 形参类型 );赋值:变量名=^(形参){ 代码块+形参变量 };使用:变量

2016-02-25 17:05:39 728

原创 运行时runtime

运行时-RunTime1. 什么是运行时一套纯C语言的API可以做很多底层操作,例如: 动态添加对象的成员变量 和 方法.动态交换两个方法的 实现.(替换系统的方法/监听一些事).获得某个类 所有成员方法,所有成员变量.因为 编译器 最终都会将 OC代码 转化 为运行时代码; 例:调用方法即是 向其发送了消息 等于底层: objc_msgSend(receiver,@selecto

2016-02-25 17:01:36 773

原创 ObjC类与属性的copy关键字

1. NSFileManager类管理文件系统作用:进行常见的文件操作(拷贝,创建等); 特点:单例模式,不需要NEW对象获取; NSFileManger *fm=[NSFileManger defaultManger];///获取此类对象功能:判断文件是否存在.根据路径是否存在.-(BOOL)fileExistsAtPath:路径;判断文件是否一个目录:fileExistsAtPath:路

2016-02-25 16:58:15 605

原创 ObjC的基本特征

1. ObjC一般要点OC中所有对象类型的变量都必须加上”*”,在ObjC中对象其实就是一个指针.ObjC中使用[ ]来进行方法调用,本质其实就是发送消息.ObjC中方法分为静态方法和动态方法,动态方法就是对象方法,静态方法就是类方法.公共成员(public)的调用可以使用”->”操作符.成员变量和属性: 通常一个成员的访问不会直接通过成员变量 而是通过属性暴露给外界.ObjC中实现属性就

2016-02-25 16:52:53 1523

原创 ios的c语言基础

iOS的C语言基础iOS学习按照C- OC - UI/网络 - Swift 顺序;C语言的运行过程 C语言的运行分为两大部分: 编译和链接编译:编译阶段会将对应的xx.c源文件(ASCII格式) 编译成目标文件 xx.obj(二进制格式);编译之前先进行预处理, 同时也会进行语法检查;链接: 将各个.obj文件和C语言库函数组合成一个可执行文件的过程 ; 扩展: 在大型项目开发过程中,所有

2016-02-25 16:42:22 581

原创 内存管理与属性的参数

内存管理的基本范围和概念.程序运行过程中药创建大量的对象, 和其他高级语言类似,在ObjC中对象存储在堆区,程序不会自动释放内存. 如果对象创建使用后没有及时释放,那么就会占用大量内存. 其他高级语言都是通过垃圾回收机制来解决.在ObjC中并没有,所以需要手动维护.目的:移动设备的内存非常有限,应对iOS系统对app内存限制. iOS在应用程序使用超过20M,40M分别发送MemoryWaring

2016-02-25 15:57:38 1061

转载 存储图片URL

2015-12-02 12:59:18 874

原创 c 语言笔记.函数和位运算

C语言函数定义:返回值类型 +函数名(形式参数类型 参数名,...........){                   程序代码;                   return 返回值}调用:函数名(实际参数1,实际参数2,............);函数特点:1.返回值不定义的情况下,默认为int类型,如果不需要返回

2015-10-02 17:56:55 569

原创 c 语言笔记.变量与运算符

9月22日 1,创建变量就会在内存中占用一块大小固定的存储空间。函数作用域执行完成后释放空间。2,格式化规定字符:%d%f%p %c %s等; 另外修饰有%0.mf%-m.nf % ull 3,变量及其作用域:除指针外只在函数域内起作用,不同函数属于平行作用域,平行作用域不相关。同一个函数下的作用域可以有多个嵌套子作用

2015-10-02 17:54:09 430

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除