11 2016 档案

摘要:Today extensions (今日扩展): Today extension就是我们上面所说的通知中心扩展,因为这个扩展会显示在我们通知中心的 “今天” 这个标签下面。这个扩展的作用很简单,能够让用户更快速方便的看到app最及时的信息,比如中国移动的流量显示,我不用再每次打开移动的app去查看流 阅读全文
posted @ 2016-11-30 17:06 FMDN 阅读(1366) 评论(0) 推荐(2) 编辑
摘要:症状 iOS 10 之后,陆陆续续地有用户联系我们,说新机第一次安装、第一次启动的时候,app 首屏一片空白,完全没数据。kill 掉重新打开就好了。 一开始以为是用户网络情况不好,但随着越来越多的用户报告这个问题,我意识到这并不是偶然情况。但是并非所有用户都如此。 而且卸载掉之后,如果再装,也不会 阅读全文
posted @ 2016-11-30 08:34 FMDN 阅读(10049) 评论(0) 推荐(0) 编辑
摘要:在日常开发过程中,为了提升程序运行效率,以及用户体验,我们经常使用多线程。在使用多线程的过程中,难免会遇到资源竞争问题。我们采用锁的机制来确保线程安全。 线程安全 当一个线程访问数据的时候,其他的线程不能对其进行访问,直到该线程访问完毕。即,同一时刻,对同一个数据操作的线程只有一个。只有确保了这样, 阅读全文
posted @ 2016-11-30 08:31 FMDN 阅读(318) 评论(0) 推荐(0) 编辑
摘要:先看两行代码:1. 2. 相信大家对上面的两行代码都不会陌生 上一行:UIColor原本是没有读取十六进制颜色值的方法的 下一行:UITableView原本是没有header属性的 那么,How it happened? Because of the Category! Category(类别)简介 阅读全文
posted @ 2016-11-29 16:42 FMDN 阅读(723) 评论(0) 推荐(0) 编辑
摘要:发布开源库到CocoaPods的时候。对CocoaPods重新学习了一下。 1.CocoaPods的日常使用 2.创建CocoaPods的私有库 3.创建CocoaPods的开源库 一. CocoaPods的介绍 什么是CocoaPods?CocoaPods是一个负责管理iOS项目中第三方开源库的工 阅读全文
posted @ 2016-11-28 09:05 FMDN 阅读(349) 评论(0) 推荐(0) 编辑
摘要:经常用UC看到首页有这么一个动画,就仿造写了一下。 实现分析 1.画曲线的动画 这个一眼看去就想到用贝塞尔曲线画,来看贝塞尔曲线方法,给出两个定点,和一个控制点就可以画。 CGContextAddQuadCurveToPoint(context, 控制点x, 控制点y, 目标点x, 目标点y); 于 阅读全文
posted @ 2016-11-28 08:56 FMDN 阅读(554) 评论(0) 推荐(0) 编辑
摘要:最近看到的Slow App Startup Times里提到: The dynamic loader finds and reads the dependent dynamic libraries (dylibs) used by the App. Each library can itself h 阅读全文
posted @ 2016-11-28 08:52 FMDN 阅读(332) 评论(0) 推荐(0) 编辑
摘要:通过GNUstep的Foundation来尝试探索下NSOperation,NSOperationQueue 示例程序 写一个简单的程序 - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loadi 阅读全文
posted @ 2016-11-28 08:40 FMDN 阅读(571) 评论(0) 推荐(0) 编辑
摘要:iOS网络层设计 1、网络层和业务层的对接设计 使用哪种交互模式来和业务层对接 : 使用Delegate为主,目的是为了(1)减少代码的分散度(2)减少业务层和网络层的耦合,网络层对于业务层应该是抽象的,隐藏了实现细节的 (3)只采用一种是限制了灵活性,方便进行维护 在网络层不要滥用block :( 阅读全文
posted @ 2016-11-25 16:01 FMDN 阅读(2055) 评论(0) 推荐(0) 编辑
摘要:最近项目里有个需求和导航栏的样式定制有关,深入之后发现之前理解的一些概念有些模糊,刚好趁着这次机会全面整理了一下。 从 iOS7 开始,苹果采用了大量的扁平化和毛玻璃风格,刚升级到 iOS7 之后会发现界面的布局多多少少有一些偏差(当然现在新建的项目没有这方面困扰,不需要经历6到7的适配),适配过程 阅读全文
posted @ 2016-11-25 08:02 FMDN 阅读(215) 评论(0) 推荐(0) 编辑
摘要:性能对 iOS 应用的开发尤其重要,如果你的应用失去反应或者很慢,失望的用户会把他们的失望写满App Store的评论。然而由于iOS设备的限制,有时搞好性能是一件难事。开发过程中你会有很多需要注意的事项,你也很容易在做出选择时忘记考虑性能影响。 这正是我写下这篇文章的原因。这篇文章以一个方便查看的 阅读全文
posted @ 2016-11-24 16:18 FMDN 阅读(193) 评论(0) 推荐(0) 编辑
摘要:1.内存空间的划分: 我们知道,一个进程占用的内存空间,包含5种不同的数据区:(1)BSS段:通常是存放未初始化的全局变量;(2)数据段:通常是存放已初始化的全局变量。(3)代码段:通常是存放程序执行代码。(4)堆:通常是用于存放进程运行中被动态分配的内存段 , OC对象(所有继承自NSObject 阅读全文
posted @ 2016-11-24 15:22 FMDN 阅读(661) 评论(0) 推荐(0) 编辑
摘要:ios 中的构造方法 1.什么是构造方法? 初始化对象的方法. 默认情况下,在 OC 当中创建1个对象分为两部分(new 做的事): +alloc:分配内存空间 -init :初始化对象 初始化对象的方法. 默认情况下,在 OC 当中创建1个对象分为两部分(new 做的事): +alloc:分配内存 阅读全文
posted @ 2016-11-23 19:08 FMDN 阅读(179) 评论(0) 推荐(0) 编辑
摘要:一. 成员变量 (一)变量的作用域主要分为四种: (1)@public (公开的)在有对象的前提下,任何地方都可以直接访问。 (2)@protected (受保护的)只能在当前类和子类的对象方法中访问 (3)@private (私有的)只能在当前类的对象方法中才能直接访问 (4)@package ( 阅读全文
posted @ 2016-11-23 18:54 FMDN 阅读(336) 评论(0) 推荐(0) 编辑
摘要:iOS中提供了2中推送通知1.本地推送通知(Local Notification)2.远程推送通知(Remote Notification) 推送的作用:可以让不在前台运行的app,告知客户app内部发生的事情.(QQ消息推送,微信消息推送等等) 推送通知的呈现效果:1.在屏幕顶部显示的一条横幅2. 阅读全文
posted @ 2016-11-23 17:06 FMDN 阅读(367) 评论(0) 推荐(0) 编辑
摘要:IOS的动态性主要来自以下方面的特性:动态类型,动态绑定,动态载入,SEL类型。 1、IOS的动态类型:(强类型)id可以在代码运行时判断对象的类型。使用id类型(又称强类型)可以在运行的时候使用任何数据类型来替换。动态类型让程序更加灵活,但会使数据的统一性降低。我们常用的静态类型如NSString 阅读全文
posted @ 2016-11-23 16:59 FMDN 阅读(267) 评论(0) 推荐(0) 编辑
摘要:封装 封装:隐藏内部(定义类、定义属性、定义方法。) 封装 实现,稳定外部接口。 @propert和@synthesize #import “Car.h” #import <Foundation/Foundation.h> @interface Car : NSObject { int _wheel 阅读全文
posted @ 2016-11-23 10:23 FMDN 阅读(186) 评论(0) 推荐(0) 编辑
摘要:description基本概念 1.NSLog(@"%@", objectA);这会自动调用objectA的description方法来输出ObjectA的描述信息. 2.description方法默认返回对象的描述信息(默认实现是返回类名和对象的内存地址) 3.description方法是基类NS 阅读全文
posted @ 2016-11-23 10:23 FMDN 阅读(1000) 评论(0) 推荐(0) 编辑
摘要:场景 在做一个APP的聊天功能,聊天消息走socket推过来的,每个消息有唯一的id,id随时间是增大的,聊天消息要按时间有序,不重复,不遗漏。 本博客主要想说消息有序,但提到了不重复,不遗漏,也简单说一下。 不遗漏:一种方式就是本地保存最新的消息id,请求最新数据时带上这个id,等到请求回来,才能 阅读全文
posted @ 2016-11-22 10:11 FMDN 阅读(752) 评论(0) 推荐(0) 编辑
摘要:iOS8之后,苹果推出了WebKit这个框架,用来替换原有的UIWebView,新的控件优点多多。由于一直在适配iOS7,就没有去替换,现在仍掉了iOS7,以为很简单的就替换过来了,然而在替换的过程中,却遇到了很多坑。还有一点就是原来写过一篇文章 Objective-C与JavaScript交互的那 阅读全文
posted @ 2016-11-22 10:09 FMDN 阅读(537) 评论(0) 推荐(0) 编辑
摘要:如果你曾经试过做多 target 的项目,到了测试人员要测试包的时候,你就会明白什么叫“生不如死”。虽然 Xcode 打包很方便,但是当你机械重复打 N 次包的时候,就会觉得这纯粹是浪费时间的工作。所以这时候自动化打包就显得尤为重要(其实就算只有一个 target,就算使用 Xcode 打包很方便, 阅读全文
posted @ 2016-11-21 10:17 FMDN 阅读(261) 评论(0) 推荐(0) 编辑
摘要:Contents OverView Static Analyzer Localizability Instance Cleanup Nullablility Runtime Issue View Debugging Enhancements Enhancements Debug Workflow M 阅读全文
posted @ 2016-11-21 10:15 FMDN 阅读(288) 评论(0) 推荐(0) 编辑
摘要:前言 项目某个新需求的交互要求仿照淘宝上拉从下网上弹出宝贝详情。今天打开淘宝APP仔细看了看,然后自己写了写,现在感觉效果差不多了,记录一下。 分析 可以看到,该页面是分为两部分的,一部分是一开始就能看到的商品信息,然后我们上拉屏幕,屏幕不断往上滚动,滚动到第一部分结束时可以看到底部有“继续拖动,查 阅读全文
posted @ 2016-11-21 10:06 FMDN 阅读(532) 评论(0) 推荐(0) 编辑
摘要:随着iOS10发布的临近,大家的App都需要适配iOS10,下面是我总结的一些关于iOS10适配方面的问题,如果有错误,欢迎指出. 1.系统判断方法失效: 在你的项目中,当需要判断系统版本的话,不要使用下面的方法: #define isiOS10 ([[[[UIDevice currentDevic 阅读全文
posted @ 2016-11-21 10:02 FMDN 阅读(220) 评论(0) 推荐(0) 编辑
摘要:下载 首先,你要想找到这个SDK,都得费点功夫。现在的SDK改名叫移动支付集成开发包了,下载页面在 这里 (http://t.cn/8ksiklD)的 “请点此下载集成开发包(http://t.cn/RAVANhV)” Baidu和Googlep排在前面的支付宝开放平台,里面的SDK已经是2年前的版 阅读全文
posted @ 2016-11-21 10:01 FMDN 阅读(213) 评论(0) 推荐(0) 编辑
摘要:关于 Quick Touch & Touch Bar Touch Bar 其实就是在原来 MBP 的按键区顶部新增了一个长条形的OLED触控屏,提供一些常用的快捷键。(iMessage 选表情那个真的非常好 ~) Quick Touch 这个应用的 idea 是受 Touch Bar 激发的。当然, 阅读全文
posted @ 2016-11-21 09:34 FMDN 阅读(280) 评论(0) 推荐(0) 编辑
摘要:前言 小的作为一个iOS程序猿,可能研究JavaScript以及H5相关的知识并不是为了真正的要去转行做这一方面,其实更多的为了要研究OC中的JavaScriptCore框架,JavaScriptCore框架主要是用来实现iOS与H5的交互.当然了,最早我曾经写过iOS浅谈webView的JS一种用 阅读全文
posted @ 2016-11-21 09:16 FMDN 阅读(396) 评论(0) 推荐(0) 编辑
摘要:背景 学习6个小Tips 那就跟我一起学习小知识点吧.目录如下: 修改Mac终端(Terminal)里不同类型文件的显示颜色 修改Mac终端(Terminal)的提示文字 Mac终端显示/隐藏文件命令 被忽略的dispatch_block_t NSAssert()和NSParameterAssert 阅读全文
posted @ 2016-11-21 09:12 FMDN 阅读(221) 评论(0) 推荐(0) 编辑
摘要:前言 ReactiveCocoa是一个(第一个?)将函数响应式编程范例带入Objective-C的开源库。ReactiveCocoa是由Josh Abernathy和Justin Spahr-Summers 两位大神在对GitHub for Mac的开发过程中编写的。Justin Spahr-Sum 阅读全文
posted @ 2016-11-21 09:07 FMDN 阅读(235) 评论(0) 推荐(0) 编辑
摘要:RAC 5.0 相比于 4.0 有了巨大的变化,不仅是受 swift 3.0 大升级的影响,RAC 对自身项目结构的也进行了大幅度的调整。这个调整就是将 RAC 拆分为四个库:ReactiveCocoa、ReactiveSwift、ReactiveObjC、ReactiveObjCBridge。 R 阅读全文
posted @ 2016-11-21 08:55 FMDN 阅读(264) 评论(0) 推荐(0) 编辑
摘要:一:前言 记得工作中第一次用的刷新控件是svpulltorefresh,用法稍微有点麻烦,而且bug颇多,后来果断放弃,现在用的是MJRefresh,不管是用法还是bug,都比前一个好多了,但是不久前也遇到了一个致命的bug,有好些情况下会导致MJRefresh陷入一个死循环,导致不断的刷新,只能重 阅读全文
posted @ 2016-11-21 08:53 FMDN 阅读(208) 评论(0) 推荐(0) 编辑
摘要:需求 写这个小工具的想法,主要来源于很多团队都会用友盟、TalkingData 等第三方框架做自定义事件统计;不过统计代码加好之后,没有很好的方法来让测试工程师验证一下事件加上了没有,调用次数有没有重复等。 所以写了这个小工具,是一个保持在最前的 UIWindow,可以实时打印 log。 源码地址 阅读全文
posted @ 2016-11-21 08:51 FMDN 阅读(1593) 评论(0) 推荐(0) 编辑
摘要:NSLog,po命令和普通断点调试相信每个iOS开发者都会,这里就不作介绍了。 一、Memory Graph Xcode8新增:Memory Graph解决闭包引用循环问题 有很多叹号说明就有问题了。看内存中object的名字,有一条是Closure captures leaked。展开后点击就可以 阅读全文
posted @ 2016-11-18 08:34 FMDN 阅读(548) 评论(0) 推荐(0) 编辑
摘要:来源:伯乐在线 - 王小树 链接:http://ios.jobbole.com/90603/ 点击 → 申请加入伯乐在线专栏作者 一、准备工作 1、注册一个小程序账号,得用一个没注册过公众号的邮箱注册。 2、注册过程中需要很多认证,有很多认证,比较繁琐,如果暂时只是开发测试,不进行提审、发布的话,只 阅读全文
posted @ 2016-11-18 08:25 FMDN 阅读(1031) 评论(1) 推荐(0) 编辑
摘要:来源:伯乐在线 - Tsui YuenHong 链接:http://ios.jobbole.com/90422/ 点击 → 申请加入伯乐在线专栏作者 新增实践部分:偏方 Hook 进某些方法来添加功能 Category – 简介 Category(类别)是 Objective-C 2.0 添加的新特 阅读全文
posted @ 2016-11-18 08:18 FMDN 阅读(212) 评论(0) 推荐(0) 编辑
摘要:一. 单例模式简介 单例模式的作用 可以保证在程序运行过程,一个类只有一个实例,而且该实例易于供外界访问 从而方便地控制了实例个数,并节约系统资源 单例模式的使用场合 在整个应用程序中,共享一份资源(这份资源只需要创建初始化1次),一般用于工具类。例如:登陆控制器,网络数据请求,音乐播放器等一个工程 阅读全文
posted @ 2016-11-09 08:55 FMDN 阅读(198) 评论(0) 推荐(0) 编辑
摘要:来源:scauos(@大朕东) 链接:http://www.jianshu.com/p/b30785bb6c97 开头语: 今天的主题是探索iOS10 SceneKit的新功能,你可以观看今年WWDC的视频Advances in SceneKit Rendering SceneKit 介绍,Scen 阅读全文
posted @ 2016-11-09 08:54 FMDN 阅读(443) 评论(0) 推荐(0) 编辑
摘要:一、前言 这两天做了个小项目涉及到了远程音乐播放,因为第一次做这种音乐项目,边查资料边做,其中涉及到主要技术点有: 如何播放远程网络音乐 如何切换当前正在播放中的音乐资源 如何监听音乐播放的各种状态(播放器状态、播放的进度、缓冲的进度,播放完成) 如何手动操控播放进度 如何在后台模式或者锁屏情况下正 阅读全文
posted @ 2016-11-08 08:02 FMDN 阅读(277) 评论(0) 推荐(0) 编辑
摘要:当前的大环境比去年差了很多,一方面求职的人多了而岗位因为经济形势的影响却相应的少了很多。通货膨胀,生活压力只增不减。对于应聘的万千大军而言,如何能脱颖而出,是个值得考虑的技术问题。自己的价值在于不可替代性或是难以替代性。如果,随便找个程序员就能把你replace掉,你的价值就很低廉了。如果在你负责的 阅读全文
posted @ 2016-11-08 08:00 FMDN 阅读(343) 评论(0) 推荐(0) 编辑
摘要:来源:Draveness(@Draveness) 链接:http://www.jianshu.com/p/1519a5302141 前两次的分享分别介绍了 ASDK 对于渲染的优化以及 ASDK 中使用的另一种布局模型;这两个新机制的引入分别解决了 iOS 在主线程渲染视图以及 Auto Layou 阅读全文
posted @ 2016-11-07 08:41 FMDN 阅读(693) 评论(0) 推荐(0) 编辑
摘要:前言 前几天我们项目组的群里提了这么一件事情:在我们的应用中存储动态的GIF图到相册,保存的图片变成了静态图片。而微博则能正确保存,可见这并不是一个技术不可实现的。前不久刚好看了苹果关于ImageIO框架的指南,借着这个契机,我就去调研调研其中的原委。 使用UIImage读取GIF图片的不足 UII 阅读全文
posted @ 2016-11-07 08:31 FMDN 阅读(1285) 评论(0) 推荐(0) 编辑
摘要:来源:NewPan(@盼盼_HKbuy) 链接:http://www.jianshu.com/p/0d4588a7540f Tips:这次的内容分为两篇文章讲述 01、[iOS]仿微博视频边下边播之封装播放器 讲述如何封装一个实现了边下边播并且缓存的视频播放器。 02、[iOS]仿微博视频边下边播之 阅读全文
posted @ 2016-11-07 08:30 FMDN 阅读(386) 评论(0) 推荐(0) 编辑
摘要:本文不做Block的基本介绍和底层实现原理,有兴趣的同学直接戳这篇文章(http://www.jianshu.com/p/51d04b7639f1),写得灰常好,本文只在应用层面上带领读者进行思考,并整理出一些结论.这些结论是我从书上和上网资料收集所得,并通过实践进行验证而来,希望能和高手们共同探讨 阅读全文
posted @ 2016-11-01 08:02 FMDN 阅读(145) 评论(0) 推荐(0) 编辑
摘要:由于傲娇的苹果在 iOS9 之后已经放弃了 NSURLConnection,所以在现在的实际开发中,除了大家常见的 AFN 框架,一般使用的是 iOS7 之后推出的 NSURLSession,作为一名 iOS 开发人员,如果你只知道 AFN 框架来进行网络请求,那就只能说是 too young to 阅读全文
posted @ 2016-11-01 07:58 FMDN 阅读(214) 评论(0) 推荐(0) 编辑
摘要:这是一篇 WWDC 2016 Session 406 的学习笔记,从原理到实践讲述了如何优化 App 的启动时间。 App 运行理论 main() 执行前发生的事 Mach-O 格式 虚拟内存基础 Mach-O 二进制的加载 理论速成 Mach-O 术语 Mach-O 是针对不同运行时可执行文件的文 阅读全文
posted @ 2016-11-01 07:57 FMDN 阅读(446) 评论(0) 推荐(0) 编辑
摘要:1. 需求点是什么? 这里所说的多图下载,就是要在tableview的每一个cell里显示一张图片,而且这些图片都需要从网上下载。 2. 容易遇到的问题 如果不知道或不使用异步操作和缓存机制,那么写出来的代码很可能会是这样: 这样写有什么后果呢? 后果1:不可避免的卡顿(因为没有异步下载操作) da 阅读全文
posted @ 2016-11-01 07:56 FMDN 阅读(265) 评论(0) 推荐(0) 编辑

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