自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(73)
  • 资源 (42)
  • 收藏
  • 关注

转载 iOS开发系列--音频播放、录音、视频播放、拍照、视频录制

--iOS多媒体概览随着移动互联网的发展,如今的手机早已不是打电话、发短信那么简单了,播放音乐、视频、录音、拍照等都是很常用的功能。在iOS中对于多媒体的支持是非常强大的,无论是音视频播放、录制,还是对麦克风、摄像头的操作都提供了多套API。在今天的文章中将会对这些内容进行一一介绍:音频音效音乐音频会话录音音频队列服务视频MPMoviePlayerContr

2016-04-30 23:24:04 460

转载 iOS瘦身之删除FrameWork中无用mach-O文件

iOS瘦身之删除FrameWork中无用mach-O文件原文  http://www.infoq.com/cn/articles/ios-thinning-delete-unnecessary-mach-o最近项目末期, 我们团队为了ipa的大小使用不少的体积减小的方法, 除了一些常规的方法之外, 我分享一下自己研究出来的新思路。首先我们来简单的介绍一下ma

2016-04-30 23:04:46 2855

转载 frame 与 bounds 的区别与关系

frame和bounds是UIView中的两个属性(property)。frame指的是:该view在父view坐标系统中的位置和大小。(参照点是父亲的坐标系统)bounds指的是:该view在本身坐标系统中 的位置和大小。(参照点是本身坐标系统)-(CGRect)frame{  return CGRectMake(self.frame.origin.x,self.fra

2016-04-30 20:42:52 293

转载 NSURLSession的介绍和说明

相关组件NSURLSessionNSURLSessionConfigurationNSURLSessionDataTaskNSURLSessionUploadTaskNSURLSessionDownloadTask与NSURLConnection对比改进是可以配置每个session的缓存,协议,cookie以及credential policy。每个NSURLSession

2016-04-30 16:55:47 1286

转载 NSURLSession的基本使用

.1 涉及知识点(1)使用步骤 使用NSURLSession创建task,然后执行task(2)关于taska.NSURLSessionTask是一个抽象类,本身不能使用,只能使用它的子类b.NSURLSessionDataTask\NSURLSessionUploadTask\NSURLSessionDownloadTask(3)发送get请求

2016-04-30 16:53:22 496

转载 iOS http 怎么设置cookie

一直以为ios的http请求这块很简单应该不支持记录,保存,或者使用cookie,可是想当然归想当然,真用的时候,真研究了一下发现还真强大。经过一番的研究简单说一下我的理解:当你访问一个网站时,不管你愿意或者不愿意,NSURLRequest都会帮你主动记录下来你访问的站点设置的cookie,而且很负责任的,当你下次再访问这个站点时,NSURLRequest会拿着上次保存下来了的cookie继续去请

2016-04-28 19:34:15 732

原创 为什么要在预编译头中加__OBJC__?

因为在一个OC工程中,可能包含.m、.mm、.c、.cpp四类编译文件,这四类文件均会引用.pch预编译头。      在编译.c,.cpp时,因为语法不兼容OC,所以预编译头中不能包含objc代码。     因为.pch是2类源文件共用的,所以在pch中,oc头文件要用__OBJC__包含起来。如下:

2016-04-28 19:25:47 411

转载 利用dwarfdump命令和dsym文件链接binary image,查看crash log中

利用dwarfdump命令和dsym文件链接binary image,查看crash log中... 首先需要打包的dsym文件,然后在终端中输入命令: ?1$ dwarfdump --lookup=ADDRESS --arch=ARCH {MyApp.app.dsym}

2016-04-27 19:13:33 884

转载 IMP

可能大家一直看到有许多朋友在Runtime相关文章中介绍IMP指针的概念,那么IMP究竟有什么实际作用呢?让我们先从一个函数看起来。Method Swizzling如果对Runtime有一定了解的话,一定听说过或者用过这个函数:1void method_exchangeImplementations(Method m1, Me

2016-04-27 15:55:09 429

转载 深入理解Objective-C的Runtime机制

摘要:Objective-C是基于C加入了面向对象特性和消息转发机制的动态语言,除编译器之外,还需用Runtime系统来动态创建类和对象,进行消息发送和转发。本文作者通过分析Apple开源的Runtime代码来深入理解OC的Runtime机制。这时首先会构造出objc_super结构体,这个结构体第一个成员是self,第二个成员是(id)class_getSuperclas

2016-04-27 12:41:23 416

转载 Objective C的runtime

前言:         Objective C的runtime技术功能非常强大,能够在运行时获取并修改类的各种信息,包括获取方法列表、属性列表、变量列表,修改方法、属性,增加方法,属性等等,本文对相关的几个要点做了一个小结。目录:(1)使用class_replaceMethod/class_addMethod函数在运行时对函数进行动态替换或增加新函数(2)重载f

2016-04-27 12:39:36 198

转载 sendEvent——A trick for capturing all touch input for the duration of a touch

A trick for capturing all touch input for the duration of a touchIf you’ve ever tried to implement an interactive control that makes use of gestures within a UITableView, or tried to implement a view

2016-04-26 23:04:28 323

转载 小笨狼与LLDB的故事

你是否曾经苦恼于理解你的代码,而去尝试打印一个变量的值?NSLog(@"%@", whatIsInsideThisThing);或者跳过一个函数调用来简化程序的行为?NSNumber *n = @7; // 实际应该调用这个函数:Foo();或者短路一个逻辑检查?if (1 || theBooleanAtStake) { ... }或者伪造一个函数实现?

2016-04-26 20:26:34 396

转载 iOS dSYM文件结构剖析(上)

摘要:在iOS App开发过程中,开发者会利用Xcode打包生成.xcarchive的包文件,并通过Organizer工具可以管理、导出发布文件。本文作者从本文开始,详细剖析了打包之后的dSYM文件的结构。CSDN移动将持续为您优选移动开发的精华内容,共同探讨移动开发的技术热点话题,涵盖移动应用、开发工具、移动游戏及引擎、智能硬件、物联网等方方面面。如果您想投稿、参与内容翻译工

2016-04-26 19:33:31 711

转载 iOS Crash文件的解析(一)

iOS Crash文件的解析(一) yuanwen: http://www.cnblogs.com/smileEvday/p/Crash1.html  开发程序的过程中不管我们已经如何小心,总是会在不经意间遇到程序闪退。脑补一下当你在一群人面前自信的拿着你的App做功能预演的时候,流畅的操作被无情地Crash打断。联想起老罗在发布Smartisan OS的时候说了,他准备了10个手

2016-04-26 19:31:07 298

转载 dSYM 文件分析工具

dSYM 文件分析工具原文:http://www.cocoachina.com/ios/20141219/10694.html来到新公司后,前段时间就一直在忙,前不久 项目 终于成功发布上线了,最近就在给项目做优化,并排除一些线上软件的 bug,因为项目中使用了友盟统计,所以在友盟给出的错误信息统计中能比较方便的找出客户端异常的信息,可是很多像数组越界却只给出了 *** -

2016-04-26 19:11:27 432

转载 OSAtomic原子操作

OSAtomic原子操作OCT 17TH, 2014 | COMMENTS并发编程一个主要问题就是如何同步数据。同步数据的方式有很多种,这里我们介绍一下libkern/OSAtomic.h。这个头文件包含是大量关于原子操作和同步操作的函数,如果要对数据进行同步操作,这里面的函数可以作为我们的首选项。不同平台这些函数的实现是自定义的。另外,它们是线程安全的。需要注意的是,

2016-04-26 15:05:38 937

转载 OSATOMIC与synchronized 加锁的对比

(转: http://blog.csdn.net/a21064346/article/details/8076972)#import导入这个文件,可以调用里面的函数,来保证变量的数值。/*! @header * These are the preferred versions of the atomic andsynchroniz

2016-04-26 14:40:26 357

原创 instancetype

instancetype 关键字,它可以表示一个方法的相关返回类型。例如:@interface Person + (instancetype)personWithName:(NSString *)name; @end instancetype 与 id 不一样,  instancetype 只能在方法声明中作为返回类型使用。使用 ins

2016-04-26 14:30:25 284

转载 HTTP: Status code

转载于:http://blog.csdn.net/wellway/article/details/7394900常见的状态码:HTTP: Status200– 服务器成功返回网页HTTP: Status404– 请求的网页不存在HTTP: Status503– 服务不可用————————————————————————————————HTTP:

2016-04-26 14:20:11 310

转载 AFNetworking 2.x 的SSL身份认证

一般来讲如果app用了web service , 我们需要防止数据嗅探来保证数据安全.通常的做法是用ssl来连接以防止数据抓包和嗅探其实这么做的话还是不够的.我们还需要防止中间人攻击(不明白的自己去百度)。攻击者通过伪造的ssl证书使app连接到了伪装的假冒的服务器上,这是个严重的问题!那么如何防止中间人攻击呢?首先web服务器必须提供一个ssl证书,需要一个 .crt 文

2016-04-24 22:39:02 221

转载 介绍NSURLSESSION网络请求套件

昨天翻译了一篇《NSURLSession的使用》的文章,地址:http://www.cnblogs.com/JackieHoo/p/4995733.html,原文是来自苹果官方介绍NSURLSession技术实现网络请求的原理文章,文章中提到NSURLSession网络请求技术是NSURLSession这个新类和它相关类的套件集合。今天这篇文章,我就重点介绍下NSURLSession套件的几个重要

2016-04-24 21:30:44 376

转载 iOS 7系列译文:忘记NSURLConnection,拥抱NSURLSession吧!

说到 iOS 7 和 Mac OS X 10.9 Mavericks 的显著变化,其中一个就是Foundation框架中URL加载系统的优化。  此时可能有人正沉浸在Apple的网络基础架构,我想在这里分享一下我对这些新APIs的看法,并展示这些新APIs如何改变我们构建应用程序的方式,以及这些它们在API设计理念演变中的意义。  作为Core Foundation / CFNet

2016-04-24 21:17:59 304

转载 心跳包机制

心跳包机制   跳包之所以叫心跳包是因为:它像心跳一样每隔固定时间发一次,以此来告诉服务器,这个客户端还活着。事实上这是为了保持长连接,至于这个包的内容,是没有什么特别规定的,不过一般都是很小的包,或者只包含包头的一个空包。    在TCP的机制里面,本身是存在有心跳包的机制的,也就是TCP的选项:SO_KEEPALIVE。系统默认是设置的2小时的心跳频率。但是它检查不到机器断电、网线拔出

2016-04-24 21:06:29 1227

转载 ios在后台每隔一段时间执行一下 资料3

如何使应用被切到后台,应用中的网络连接仍然接收数据并维持存活(像QQ iphone 一样);其实按 IOS官方文档一步一步做就可以实现上述功能;这里主要说一下我按文档遇到的问题,以及将原来的C/C++程序(主要是网络层)简单的修改一下就可以支持 IOS后台运行的方法.1.在 xxxx Info.plist 添加 以支持 后台运行UIBackgroundModesvoip

2016-04-24 21:00:22 1850

转载 IOS在后台每隔一段时间执行一下 资料2

步骤:1.在info.plist里加入UIBackgroundModes键,其值为数组,数组之一为voip字符串:UIBackgroundModesvoip2.在程序启动的时候调用- (void)setupBackgroundHandler函数,函数体如下:#pragma mark - VoIP - (void)setup

2016-04-24 20:58:44 732

转载 IOS在后台每隔一段时间执行一下 资料1

如果你的应用程序需要在设备休眠的时候还能够收到服务器端发送的消息,那我们就可以借助VOIP的模式来实现这一需求。但是如果的应用程序并不是正真的VOIP应用,那当你把你的应用提交到AppStore的时候基本上会被苹果Reject. 但是如果你的应用是企业内部发布的或者你只想了解其中的原理,那该文也许对您会有所帮助。 一、在iOS中如何应用VOIP VOIP程序需要稳定的网络去连接和它相关的服务,

2016-04-24 20:57:58 2434

原创 NSSetUncaughtExceptionHandler

1,首先在delegate文件里面- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions函数里面添加:NSSetUncaughtExceptionHandler (&Uncaught

2016-04-21 11:39:15 499

转载 Objective-C消息机制的原理

http://dangpu.sinaapp.com/?p=119 在Objective-C中,message与方法的真正实现是在执行阶段绑定的,而非编译阶段。编译器会将消息发送转换成对objc_msgSend方法的调用。    objc_msgSend方法含两个必要参数:receiver、方法名(即:selector),如:    [receiver message]; 将

2016-04-21 11:12:32 337

转载 Objective-C中一种消息处理方法performSelector: withObject:

Objective-C中调用函数的方法是“消息传递”,这个和普通的函数调用的区别是,你可以随时对一个对象传递任何消息,而不需要在编译的时候声明这些方法。所以Objective-C可以在runtime的时候传递人和消息。 首先介绍两个方法 SEL和@selector根据AppleObjective-C Runtime Reference官方文档这个传递消息的函数就

2016-04-21 11:01:20 344

转载 详解objc_msgSend

【详解objc_msgSend】 1、为了性能,objc_msgSend用汇编写成。存在于objc-msg-x86_64.s中。   2、在上图代码中可以看到,objc_msgSend被分为2个过程:1)在cache中寻找SEL。2)在MethodTable寻找SEL。 3、CacheLookup中,不断地拿SEL与cache中的缓存比较,比较失败,则跳转到 LCacheMiss标

2016-04-21 10:57:18 1843

转载 oc 中的SEL

Objective-C在编译的时候,会根据方法的名字(包括参数序列),生成一个用 来区分这个方法的唯一的一个ID,这个ID就是SEL类型的。我们需要注意的是,只要方法的名字(包括参数序列)相同,那么它们的ID都是相同的。就是 说,不管是超类还是子类,不管是有没有超类和子类的关系,只要名字相同那么ID就是一样的。我们可以方便的通过方法的名字,获取到方法的ID也就是我们所说的SEL,反之亦然。

2016-04-20 07:50:57 950

转载 响应者链(Responder Chain)

响应者链(Responder Chain)响应者对象(Responder Object),指的是有响应和处理事件能力的对象。响应者链就是由一系列的响应者对象构成的一个层次结构。UIResponder是所有响应对象的基类,在UIResponder类中定义了处理上述各种事件的接口。我们熟悉的UIApplication、 UIViewController、UIWindow和所有继承自UI

2016-04-18 13:14:26 398

原创 image 圆角

方法一:效率高  aImageView.layer.cornerRadius = aImageView.frame.size.width/2.0;     aImageView.layer.masksToBounds = YES;方法二:效率低CAShapeLayer *layer = [CAShapeLayer layer];  UIBezierP

2016-04-17 22:39:33 380

转载 警惕使用NSTimer时的循环引用

使用NSTimer可能会碰到循环引用的问题。特别是当类具有NSTimer类型的成员变量,并且需要反复执行计时任务时。例如_timer = [NSTimer scheduledTimerWithTimeInterval:5.0 target:self

2016-04-17 14:12:03 1213

转载 iOS关于RunLoop和Timer

RunLoop这个东西,其实我们一直在用,但一直没有很好地理解它,或者甚至没有知道它的存在。RunLoop可以说是每个线程都有的一个对象,是用来接受事件和分配任务的loop。永远不要手动创建一个runloop,它是跟随着每个线程的。一个RunLoop接收两种source的事件:input source和timer source。同时必须知道的是,input source,runloop是异步交付的

2016-04-17 13:30:52 385

转载 iOS中几种定时器 - 控制了时间

在软件开发过程中,我们常常需要在某个时间后执行某个方法,或者是按照某个周期一直执行某个方法。在这个时候,我们就需要用到定时器。然而,在iOS中有很多方法完成以上的任务,到底有多少种方法呢?经过查阅资料,大概有三种方法:NSTimer、CADisplayLink、GCD。接下来我就一一介绍它们的用法。一、NSTimer1. 创建方法1

2016-04-17 13:16:55 295

转载 dispatch_barrier_async函数

写篇文章实践一下这个函数 .[objc] view plain copy    dispatch_queue_t concurrentQueue = dispatch_queue_create("my.concurrent.queue", DISPATCH_QUEUE_CONCURRENT);      dispatch_async(co

2016-04-16 10:18:38 310

转载 多线程并发流程控制之dispatch_group 有关函数

A B C D 4个并发下载任务,怎样在第一时间知道任务全部完成?dispatch_group 可以帮我们实现这样的控制。上代码,看说明.[objc] view plain copydispatch_group_t group = dispatch_group_create();    // 某个任务放进 group 

2016-04-16 10:16:39 834

转载 NSOperation

iOS平台提供更高级的并发(异步)调用接口,让你可以集中精力去设计需完成的任务代码,避免去写与程序逻辑无关的线程生成、运行等管理代码。当然实质上是这些接口隐含生成线程和管理线程的运行,从而更加简洁地实现多线程。下面先来研究NSOperation和NSOperationQueue类的使用。NSOperation实质是封装了需要并发运行的代码,一些主要接口和NSThread基本相同,可以看做没

2016-04-14 22:55:18 1099

iOS图像解码

iOS图像解码

2017-07-05

图像绘制与离屏渲染

图像绘制与离屏渲染

2017-07-04

ios 自定义折叠控件 一

ios 自定义折叠控件 一 用tableview 实现

2016-09-22

AutoLayout 之 UIScrollView

AutoLayout 之 UIScrollView

2016-08-21

Xcode使用xcconfig文件配置环境

Xcode使用xcconfig文件配置环境

2016-07-12

iOS , mac signal exception catch

iOS , mac signal exception catch .

2016-02-04

iOS bonjour 例子

iOS bonjour 例子

2014-05-26

桥接模式 C++ 实现

桥接模式 C++ 实现

2014-05-21

装饰者模式 C++ 实现

装饰者模式 C++ 实现

2014-05-20

中介者模式 C++

中介者模式 C++

2014-05-13

责任链模式 C++ 实现

责任链模式 C++ 实现

2014-05-10

命令模式 C++ 实现

命令模式的C++实现

2014-05-04

单例模式 C++ 实现

单例模式 C++ 实现

2014-05-01

观察者模式C++实现

观察者模式的 C++ 实现, 使用标准C++,在XCode实现。

2014-04-30

C++ 写的策略模式 2

重新,构造了一下

2014-04-30

策略模式 C++实现

策略模式的 C++ 代码实现, ide :XCode

2014-04-29

iOS 抖动动画的实现

iOS 抖动动画的实现,多多指教啊

2014-02-25

IOS -(void)load 方法的响应

IOS -(void)load 方法的响应

2014-02-25

iOS点击响应 hitTest & pointInside

iOS点击响应 hitTest & pointInside,实现 hitTest & pointInside

2014-02-25

ios历史行为记录

ios历史行为记录

2013-05-26

Camera多张拍摄Demo

Camera多张拍摄Demo

2013-05-26

水平tableView

水平tableView

2013-05-26

iOS页面 Autolayout

iOS页面 Autolayout

2013-05-26

核心动画编程指南.pdf

核心动画编程指南.pdf

2013-05-26

symbian 编程源代码

学习symbian 的多个小功能编程,锁键盘,得到驱动目录,文件操作,音频播放等等

2009-11-15

Aglet 技术综合资料.rar

Aglet 技术综合资料.rar 希望对大家有帮助。。。。。。。。。。。

2009-07-19

symbian技术总结

个人总结的,有用的可以看看。。。。。。。。。。

2009-07-19

Symbian应用程序架构 总结

Symbian应用程序架构Symbian应用程序架构Symbian应用程序架构Symbian应用程序架构

2009-07-15

windows驱动开发技术详解光盘

windows驱动开发技术详解光盘windows驱动开发技术详解光盘windows驱动开发技术详解光盘

2009-07-15

Symbian IAP 浅谈

Symbian IAP 浅谈 Symbian IAP 浅谈Symbian IAP 浅谈

2009-07-15

两点间的最短路径vc6.0

两点间的最短路径vc6.0 又称格路问题。。。。。绝对能用。

2009-07-15

WMPlayer10SDK

WMPlayer10SDK ,。。。。。。。。

2009-06-30

计算机故障维护大全 看看吧

计算机故障维护大全 计算机故障维护大全 计算机故障维护大全.EXE

2009-06-20

新编Windows API参考大全.doc

新编Windows API参考大全.doc新编Windows API参考大全.doc新编Windows API参考大全.doc

2009-06-20

FFT算法。ppt 关于嵌入式

FFT算法的ppt 关于嵌入式,大家可以看看。

2009-05-18

Linux2_6内核设备驱动程序架构研究

Linux2_6内核设备驱动程序架构研究Linux2_6内核设备驱动程序架构研究Linux2_6内核设备驱动程序架构研究

2009-04-07

两步学会JavaSocket编程

两步学会JavaSocket编程两步学会JavaSocket编程两步学会JavaSocket编程

2009-04-07

文档议案版(软件开发文档格式)

文档议案版3文档议案版,软件开发文档格式) 软件开发文档格式)

2009-04-07

DOS高手速成(DOS相关学习书籍)

DOS高手速成,帮你轻松进步,学习DOS。

2009-04-06

UML参考手册-基本概念

希望对大家有帮助,感兴趣的可以下,它是关于UML的技术书籍,对系统开发行有帮助

2008-10-26

空空如也

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

TA关注的人

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