08 2016 档案

摘要:ASI基于CFNetwork框架开发,而AFN基于NSURL. ASI更底层,请求使用创建CFHTTPMessageRef进行,使用NSOperationQueue进行管理,ASIHTTPRequest就是NSOpration的子类,并实现了NSCopy协议。使用static NSOperation 阅读全文
posted @ 2016-08-31 16:50 FMDN 阅读(3302) 评论(0) 推荐(0) 编辑
摘要:该文是 objc_msgSend消息传递学习笔记 – 对象方法消息传递流程 的基础上继续探究源码,请先阅读上文。 消息转发机制(message forwarding) Objective-C 在调用对象方法的时候,是通过消息传递机制来查询且执行方法。如果想令该类能够理解并执行方法,必须以程序代码实现 阅读全文
posted @ 2016-08-31 08:03 FMDN 阅读(456) 评论(0) 推荐(0) 编辑
摘要:最近由于公司需要一个扫描银行卡获取卡号的功能,网上找了很多相关的资料,完全扫描银行卡获取卡号信息的都是价格贵的不得了的,而且仅仅只是授权而已,在此咱退而求次,找到一个可以扫描信用卡的第三方框架,给大家伙分享一下,只能扫描信用卡……o.0。 框架的名字叫CardIO 下载地址 https://gith 阅读全文
posted @ 2016-08-31 08:02 FMDN 阅读(395) 评论(0) 推荐(0) 编辑
摘要:推荐序 本文介绍了恢复符号表的技巧,并且利用该技巧实现了在 Xcode 中对目标程序下符号断点调试,该技巧可以显著地减少逆向分析时间。在文章的最后,作者以支付宝为例,展示出通过在 UIAlertView 的 show 方法处下断点,从而获得支付宝的调用栈的过程。 本文涉及的代码也开源在:https: 阅读全文
posted @ 2016-08-30 08:29 FMDN 阅读(1405) 评论(0) 推荐(1) 编辑
摘要:在Effective Objective-C 2.0 – 52 Specific Ways to Improve Your iOS and OS X Programs一书中,tip 11主要讲述了Objective-C中的消息传递机制。这也是Objective-C在C的基础上,做的最基础也是最重要的 阅读全文
posted @ 2016-08-30 08:20 FMDN 阅读(1326) 评论(0) 推荐(0) 编辑
摘要:iOS 常见知识点(一):Runtime iOS 常见知识点(二):RunLoop 锁是最常用的同步工具。一段代码段在同一个时间只能允许被有限个线程访问,比如一个线程 A 进入需要保护代码之前添加简单的互斥锁,另一个线程 B 就无法访问,只有等待前一个线程 A 执行完被保护的代码后解锁,B 线程才能 阅读全文
posted @ 2016-08-30 08:17 FMDN 阅读(393) 评论(0) 推荐(1) 编辑
摘要:NSURLSesstion POST方法 block回调方法 NSURLSesstion 代理方法 NSURLSessionDataDelegate代理方法 AFHttpSessionManager GET 请求 AFHttpSessionManager POST 请求 NSURLSessionDo 阅读全文
posted @ 2016-08-29 16:09 FMDN 阅读(461) 评论(0) 推荐(0) 编辑
摘要:在很多app中都有这样通用的页面,一直没有机会使用UICollectionView,只是简单的看过他的使用方法。今天公司美工出图,使用了他,并且遇到了好多的坑。记录一下过程,不确定使用的方法是不是最优的,如果有更好的方案,一起讨论,一起进步 理论篇 一.UICollectionViewLayout是 阅读全文
posted @ 2016-08-29 08:25 FMDN 阅读(250) 评论(0) 推荐(0) 编辑
摘要:Blocks是C语言的扩充功能,而Apple 在OS X Snow Leopard 和 iOS 4中引入了这个新功能“Blocks”。从那开始,Block就出现在iOS和Mac系统各个API中,并被大家广泛使用。一句话来形容Blocks,带有自动变量(局部变量)的匿名函数。 Block在OC中的实现 阅读全文
posted @ 2016-08-29 08:19 FMDN 阅读(372) 评论(0) 推荐(0) 编辑
摘要:前言 何为协议,简单来说在OC中我们使用关键字@protocol可以声明一个协议,并在协议中添加多个属性、方法供于遵循者实现,从某个角度上来说,这是一种不同于category机制的category。在日常开发中,协议可谓无处不在,最为核心的UITableView通过协议来获取数据、完成事件处理等。下 阅读全文
posted @ 2016-08-29 08:12 FMDN 阅读(402) 评论(0) 推荐(0) 编辑
摘要:目录 【如何快速的开发一个完整的iOS直播app】(原理篇) 【如何快速的开发一个完整的iOS直播app】(播放篇) 【如何快速的开发一个完整的iOS直播app】(采集篇) 前言 大半年没写博客了,但我一直关注着互联网的动向,最近会研究很多东西,并分享,今年移动直播行业的兴起,诞生了一大批网红,甚至 阅读全文
posted @ 2016-08-29 08:11 FMDN 阅读(3021) 评论(0) 推荐(0) 编辑
摘要:动画效果仿自国外网站readme.io的登录界面,超萌可爱的猫头鹰,具体效果如下图所示. 动画实现核心: 动画核心的是用到了iOS中UIView的transform属性,然后根据尺寸坐标对四张图片进行平移以及缩放. 具体的图层结构如图所示: 注意点: 图中只露出两个点的手臂,是不需要裁剪的,有部分是 阅读全文
posted @ 2016-08-29 08:06 FMDN 阅读(360) 评论(1) 推荐(1) 编辑
摘要:这几天为了巩固知识,从 iOS 的各个知识点开始学习,希望自己对每一个知识理解的更加深入的了解。这次来分享一下 block 的学习笔记。 block 简介 block 被当做扩展特性而被加入 GCC 编译器中的。自从 OS X 10.4 和 iOS 4.0 之后,这个特性被加入了 Clang 中。因 阅读全文
posted @ 2016-08-24 08:55 FMDN 阅读(546) 评论(0) 推荐(0) 编辑
摘要:前言: 1.在Block中一起使用weakSelf与strongSelf的含义 我们都会声明一个弱引用在block中使用, 目的就是防止循环引用, 那么weakSelf与strongSelf一起使用目的是什么呢? 首先先定义2个宏: #define LRWeakSelf(type) __weak t 阅读全文
posted @ 2016-08-24 08:51 FMDN 阅读(164) 评论(0) 推荐(0) 编辑
摘要:前言 小伙伴们在开发中难免会遇到问题, 你是如何解决问题的?不妨也分享给大家!如果此文章其中的任何一条问题对大家有帮助,那么它的存在是有意义的! 反正不管怎样遇到问题就要去解决问题, 在解决问题的同时也是提高开发经验的渠道! 1.既然有问题我们该怎样解决 ? 首先大部分人都会去百度搜索来解决问题, 阅读全文
posted @ 2016-08-24 08:45 FMDN 阅读(216) 评论(0) 推荐(0) 编辑
摘要:前言 几年前笔者是使用Objective-C进行iOS开发, 不过在两年前Apple发布swift的时候,就开始了swift的学习, 在swift1.2发布后就正式并且一直都使用了swift进行iOS的开发了, 之后就是对swift持续不断的学习, 近来swift3.0的发布, 更多的人会选择swi 阅读全文
posted @ 2016-08-24 08:34 FMDN 阅读(260) 评论(0) 推荐(0) 编辑
摘要:1、为什么要自动打包工具? 每修改一个问题,测试都让你打包一个上传fir , 你要clean -> 编译打包 -> 上传fir -> 通知测试。而且打包速度好慢,太浪费时间了。如果有一个工具能自动的帮你做完上面所有的事情,岂不是快哉? 2、网上有那么多自动打包工具,我直接下载就行了为啥还要学习? 没 阅读全文
posted @ 2016-08-24 08:31 FMDN 阅读(306) 评论(0) 推荐(0) 编辑
摘要:前言 做iOS开发的童鞋都应该会纠结一个问题,那就是在做开发的时候是使用StoryBoard还是使用Nibs又或者是Code(纯代码流)呢?笔者也非常纠结这个问题,今天碰巧在raywenderlich上面看到了几个大神之间的撕逼,哦不,讨论之后,感觉收获良多,于是就将他们讨论的内容整理翻译了一下,如 阅读全文
posted @ 2016-08-24 08:30 FMDN 阅读(332) 评论(0) 推荐(0) 编辑
摘要:这篇文章会提供一种在 Cocoa 层拦截所有 HTTP 请求的方法,其实标题已经说明了拦截 HTTP 请求需要的了解的就是 NSURLProtocol。 由于文章的内容较长,会分成两部分,这篇文章介绍 NSURLProtocol 拦截 HTTP 请求的原理,另一篇文章如何进行 HTTP Mock 介 阅读全文
posted @ 2016-08-24 08:28 FMDN 阅读(535) 评论(0) 推荐(0) 编辑
摘要:前言 刚刚接触iOS的时候,我就一直很好奇,模拟器上面能不能直接安装app呢?如果可以,我们就直接在模拟器上面聊QQ和微信了。直到昨天和朋友们聊到了这个话题,没有想到还真的可以给模拟器“安装”app! 一.应用场景 先来谈谈是什么情况下,会有在模拟器上安装app的需求。 在一个大公司里,对源码的管理 阅读全文
posted @ 2016-08-24 08:27 FMDN 阅读(1433) 评论(1) 推荐(1) 编辑
摘要:一. iOS中常见文件 (一). Xcode6之前 创建项目,默认可以看见一个存放框架的文件夹 info文件以工程文件名开头,如:第一个项目-Info.plist 项目中默认有一个PCH文件 (二). Xcode6之后(包括Xcode6) 创建项目,没有框架文件夹,使用时系统才去加载 info文件不 阅读全文
posted @ 2016-08-24 08:26 FMDN 阅读(223) 评论(0) 推荐(0) 编辑
摘要:前言 小伙伴们在开发中是否遇到过这样的需求呢,一个控件的某个部分被另外一个控件遮挡住,当点击这个重叠部分时,需要响应被遮盖控件的点击事件,就如下图所示 当我们点击区域3时,响应蓝色按钮的点击事件,点击区域1和2时,响应红色按钮的点击事件,对于区域1和3没什么好说的,那如何让红色按钮响应区域2的点击呢 阅读全文
posted @ 2016-08-23 14:29 FMDN 阅读(735) 评论(0) 推荐(0) 编辑
摘要:直接上代码 .m文件 #import "ViewController.h" @interface ViewController () <UIWebViewDelegate> @property (weak, nonatomic) IBOutlet UIWebView *webView; @end @ 阅读全文
posted @ 2016-08-16 10:41 FMDN 阅读(242) 评论(0) 推荐(0) 编辑
摘要:1.项目需求 主界面能左右滚动,还能上下滚动,点击按钮跳转界面。 2.分析界面 点击按钮跳转界面可以自定义UITabBarCotroller来实现; 左右滚动,可以利用scrollView来实现 或 UICollectionView; 上下滚动,用tableView可以实现。 3.选择实现方案 方案 阅读全文
posted @ 2016-08-16 10:39 FMDN 阅读(241) 评论(0) 推荐(0) 编辑
摘要:更新说明 这是一篇发过的文章,最近我进行了更新,增加了 Charles 4 的介绍,反向代理功能和设置外部代理,并且介绍了如何解决与FQ软件的冲突。 与此同时,正值 Charles 推出 4.0 版本,数码荔枝在做 Charles 优惠 30 元的特价活动(限时:2016 年 8 月 8 日 - 1 阅读全文
posted @ 2016-08-12 08:18 FMDN 阅读(401) 评论(0) 推荐(0) 编辑
摘要:在iOS的图片加载框架中,SDWebImage可谓是占据大半壁江山。它支持从网络中下载且缓存图片,并设置图片到对应的UIImageView控件或者UIButton控件。在项目中使用SDWebImage来管理图片加载相关操作可以极大地提高开发效率,让我们更加专注于业务逻辑实现。 SDWebImage 阅读全文
posted @ 2016-08-12 08:09 FMDN 阅读(417) 评论(0) 推荐(0) 编辑
摘要:这篇文章由一个简单的问题引出: 有两个字典,分别存有 100 条数据和 10000 条数据,如果用一个不存在的 key 去查找数据,在哪个字典中速度更快? 有些计算机常识的读者都会立刻回答: “一样快,底层都用了哈希表,查找的时间复杂度为 O(1)”。然而实际情况真的是这样么? 答案是否定的,存在少 阅读全文
posted @ 2016-08-12 08:03 FMDN 阅读(318) 评论(0) 推荐(0) 编辑
摘要:Block 是 Objective-C 中笔者最喜欢的特性,它为 Objective-C 这门语言提供了强大的函数式编程能力,而最近苹果推出的很多新的 API 都已经开始原生的支持 block 语法,可见它在 Objective-C 中变得越来越重要。 这篇文章并不会详细介绍 block 在内存中到 阅读全文
posted @ 2016-08-12 07:55 FMDN 阅读(448) 评论(0) 推荐(0) 编辑
摘要:绝大多数 iOS 开发者在学习 runtime 时都阅读过 runtime.h 文件中的这段代码: struct objc_class { Class isa OBJC_ISA_AVAILABILITY; #if !__OBJC2__ Class super_class OBJC2_UNAVAILA 阅读全文
posted @ 2016-08-05 09:06 FMDN 阅读(330) 评论(0) 推荐(0) 编辑
摘要:以前只是看了很多博客,这次打算看一下源码,并记录下来。想到哪里就读到哪里,写到哪里。读的代码版本是:objc runtime 680,可以从这里下载 https://github.com/RetVal/objc-runtime 对象与 isa 指针 开始阅读源码,首先 打开 objc-private 阅读全文
posted @ 2016-08-05 08:58 FMDN 阅读(266) 评论(0) 推荐(0) 编辑
摘要:性能对 iOS 应用的开发尤其重要,如果你的应用反应很慢,失望的用户会把他们的失望写满App Store的评论。然而由于iOS设备的限制,有时搞好性能是一件难事。开发过程中你会有很多需要注意的事项,你也很容易在做出选择时忘记考虑性能影响。 这篇文章总结了开发中常用到的一些性能优化点 1:应用启动时间 阅读全文
posted @ 2016-08-05 08:57 FMDN 阅读(268) 评论(0) 推荐(0) 编辑
摘要:WebKit是iOS8之后引入的专门负责处理网页视图的框架,其比UIWebView更加强大,性能也更优。 引言 在iOS8之前,在应用中嵌入网页通常需要使用UIWebView这样一个类,这个类通过URL或者HTML文件来加载网页视图,功能十分有限,只能作为辅助嵌入原生应用程序中。虽然UIWebVie 阅读全文
posted @ 2016-08-04 16:47 FMDN 阅读(6307) 评论(0) 推荐(0) 编辑
摘要:在 iOS 7 出來一個背景模糊的效果, Apple 官方的 sample code 則有提供怎麼使用 vImage, Quartz 來實作這個效果。接著在 iOS 8 出來之後,則提供了 UIVisualEffectView 可以疊加在繼承 UIView 的 class 的 objects ,除了 阅读全文
posted @ 2016-08-03 17:33 FMDN 阅读(291) 评论(0) 推荐(0) 编辑
摘要:在上一篇文章中介绍了 FBRetainCycleDetector 的基本工作原理,这一篇文章中我们开始分析它是如何从每一个对象中获得它持有的强指针的。 如果没有看第一篇文章这里还是最好看一下,了解一下 FBRetainCycleDetector的工作原理,如何在 iOS 中解决循环引用的问题。 ht 阅读全文
posted @ 2016-08-03 08:10 FMDN 阅读(381) 评论(0) 推荐(0) 编辑
摘要:稍有常识的人都知道在 iOS 开发时,我们经常会遇到循环引用的问题,比如两个强指针相互引用,但是这种简单的情况作为稍有经验的开发者都会轻松地查找出来。 但是遇到下面这样的情况,如果只看其实现代码,也很难仅仅凭借肉眼上的观察以及简单的推理就能分析出其中存在的循环引用问题,更何况真实情况往往比这复杂的多 阅读全文
posted @ 2016-08-03 08:08 FMDN 阅读(452) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示