摘要: 巨头们的GitHub仓库整理 原创: 金恒昱 WebHub 2018-07-26 1.Google >1.Google >https://github.com/google >2.Google Samples https://github.com/googlesamples >3.Google Co 阅读全文
posted @ 2019-03-23 23:50 yuhui.Mr 阅读(103) 评论(0) 推荐(0)
摘要: 微信移动端数据库组件WCDB系列(一)-iOS基础篇 原创: sanhuazhang WeMobileDev 2017-05-24 前言 WCDB(WeChat DataBase)是微信官方的移动端数据库组件,致力于提供一个高效、易用、完整的移动端存储方案。 它包含三个模块: WCDB-iOS/Ma 阅读全文
posted @ 2019-03-23 23:47 yuhui.Mr 阅读(508) 评论(0) 推荐(0)
摘要: 聊聊苹果的Bug - iOS 10 nano_free Crash 原创: 张三华 WeMobileDev 2016-12-06 背景 iOS 10.0-10.1.1上,新出现了一类堆栈为nano_free字样的crash问题,困扰了我们一段时间,这里主要分享解决这个问题的思路,最后尝试提出一个解决 阅读全文
posted @ 2019-03-23 23:37 yuhui.Mr 阅读(184) 评论(0) 推荐(0)
摘要: iOS微信小视频优化心得 原创: yanyang WeMobileDev 2015-08-27 小视频是微信6.0版本重大功能之一,在开发过程中遇到不少问题。本文先叙述小视频的产品需求,介绍了几个实现方案,分析每个方案的优缺点,最后总结出最优的解决方案。 小视频播放需求 可以同时播放多个视频 用户操 阅读全文
posted @ 2019-03-23 23:31 yuhui.Mr 阅读(258) 评论(0) 推荐(0)
摘要: 微信移动端数据库组件WCDB系列(二) — 数据库修复三板斧 原创: johnwhe WeMobileDev 2017-06-07 前言 长久以来SQLite DB都有损坏问题,从Android、iOS等移动系统,到Windows、Linux 等桌面系统都会出现。由于微信所有消息都保存在DB,服务端 阅读全文
posted @ 2019-03-23 23:27 yuhui.Mr 阅读(432) 评论(0) 推荐(0)
摘要: 微信 SQLite 数据库修复实践 原创: guoling WeMobileDev 2017-04-25 1、前言 众所周知,微信在后台服务器不保存聊天记录,微信在移动客户端所有的聊天记录都存储在一个 SQLite 数据库中,一旦这个数据库损坏,将会丢失用户多年的聊天记录。而我们监控到现网的损坏率是 阅读全文
posted @ 2019-03-23 23:26 yuhui.Mr 阅读(920) 评论(0) 推荐(0)
摘要: iOS 事件处理机制与图像渲染过程 原创: ted WeMobileDev 2015-11-19 致歉声明: Peter在开发公众号功能时触发了一个bug,导致群发错误。对此我们深表歉意,并果断开除了Peter。以下交回给正文时间: iOS 事件处理机制与图像渲染过程 iOS RunLoop都干了什 阅读全文
posted @ 2019-03-23 23:18 yuhui.Mr 阅读(176) 评论(0) 推荐(0)
摘要: 微信iOS9适配总结 原创: sango WeMobileDev 2015-10-26 每年iOS升级,都会带来一些坑,这次iOS9也不例外。本文总结了微信在适配iOS9上遇到的问题和解决方案。 一、iOS9问题汇总 1. 编译问题(Bitcode) 大部分人升级到Xcode7后,首先遇到的问题是编 阅读全文
posted @ 2019-03-23 23:09 yuhui.Mr 阅读(1067) 评论(0) 推荐(0)
摘要: iOS微信安装包瘦身 原创: Dreaming WeMobileDev 2015-09-21 前提 微信经过多次版本迭代,产生不少冗余代码和无用资源。之前微信也没有很好的手段知道哪个模块增量多少。另外去年10月微信开始做ARC支持,目的是为了减少野指针带来的Crash,但代价是可执行文件增大20%左 阅读全文
posted @ 2019-03-23 23:01 yuhui.Mr 阅读(394) 评论(0) 推荐(0)
摘要: [转载]微信iOS多设备多字体适配方案总结 原创: sango WeMobileDev 2015-08-06 一、背景 2014下半年,微信iOS版先后适配iPad, iPhone6/6plus。随着这些大屏设备的登场,部分用户觉得微信的字体太小,但也有很多用户不喜欢太大的字体。为了满足不同用户的需 阅读全文
posted @ 2019-03-23 22:57 yuhui.Mr 阅读(400) 评论(0) 推荐(0)
摘要: iOS微信特殊字符保护方案 yanyang WeMobileDev 2018-03-12 前言 相信大家都遇到过一段特殊文本可以让iOS设备所有app闪退的经历。前段时间大年初一,又出现某个印度语字符引起iOS11系统奔溃。所幸微信客户端做了保护并没有引起太大问题。一般来说,特殊字符闪退是系统漏洞引 阅读全文
posted @ 2019-03-23 22:46 yuhui.Mr 阅读(317) 评论(0) 推荐(0)
摘要: MMKV--基于 mmap 的 iOS 高性能通用 key-value 组件 原创: guoling WeMobileDev 2018-03-14 MMKV 是基于 mmap 内存映射的 key-value 组件,底层序列化/反序列化使用 protobuf 实现,性能高,稳定性强。 MMKV 源起 阅读全文
posted @ 2019-03-23 22:41 yuhui.Mr 阅读(600) 评论(0) 推荐(0)
摘要: 微信iOS卡顿监控系统 原创: guoling WeMobileDev 2015-09-10 引子 微信 iOS 团队在值班的时候,时不时会收到这样的卡顿反馈:“用户A 刚才碰到从后台切换前台卡了一下,最近偶尔会遇到几次”、“用户B 反馈点对话框卡了五六秒”、“现网有用户反馈切换 tab 很卡”。 阅读全文
posted @ 2019-03-23 22:35 yuhui.Mr 阅读(422) 评论(0) 推荐(0)
摘要: 微信iOS SQLite源码优化实践 原创: 张三华 WeMobileDev 2016-08-15 前言 随着微信iOS客户端业务的增长,在数据库上遇到的性能瓶颈也逐渐凸显。在微信的卡顿监控系统上,数据库相关的卡顿不断上升。而在用户侧也逐渐能感知到这种卡顿,尤其是有大量群聊、联系人和消息收发的重度用 阅读全文
posted @ 2019-03-23 22:34 yuhui.Mr 阅读(236) 评论(0) 推荐(0)
摘要: WeRead团队博客 首页 归档 [转载]SQLite线程模式探讨 发表于 2016-08-19 | 作者: zepo | 背景 最近微信 iOS 团队发表了一篇文章《微信iOS SQLite源码优化实践》,该文章介绍了微信 iOS 客户端对 SQLite 进行的源码层级的优化,以及其所取得的成果。 阅读全文
posted @ 2019-03-23 22:30 yuhui.Mr 阅读(119) 评论(0) 推荐(0)
摘要: WeRead团队博客 首页 归档 [转载]MLeaksFinder 新特性 发表于 2016-07-20 | 作者: zepo | MLeaksFinder 是 iOS 平台的自动内存泄漏检测工具,引进 MLeaksFinder 后,就可以在日常的开发,调试业务逻辑的过程中自动地发现并警告内存泄漏。 阅读全文
posted @ 2019-03-23 22:18 yuhui.Mr 阅读(126) 评论(0) 推荐(0)
摘要: WeRead团队博客 首页 归档 [转载]GYDataCenter:高性能数据库框架 发表于 2016-07-06 | 作者: zepo | GYDataCenter 是一个 SQLite 数据库框架,提供了一套简单易用的面向对象的数据操作接口,同时保留了 SQL 查询的灵活性。GYDataCent 阅读全文
posted @ 2019-03-23 22:17 yuhui.Mr 阅读(421) 评论(0) 推荐(0)
摘要: WeRead团队博客 首页 归档 [转载]面向切面编程之 Aspects 源码解析及应用 发表于 2016-06-30 | 作者: zach | 1. 背景 最近在做项目的打点统计的时候,发现业务逻辑和打点逻辑经常耦合在一起,这样一方面影响了正常的业务逻辑,同时也很容易搞乱打点逻辑,而且要查看打点情 阅读全文
posted @ 2019-03-23 22:07 yuhui.Mr 阅读(338) 评论(0) 推荐(0)
摘要: WeRead团队博客 首页 归档 [转载]iOS 启动连续闪退保护方案 发表于 2016-05-23 | 作者: rich | 引言 “如果某个实体表现出以下任何一种特性,它就具备自主性:自我修复、自我保护、自我维护、对目标的自我控制、自我改进。” —— 凯文·凯利 iOS App 有时可能遇到启动 阅读全文
posted @ 2019-03-23 21:51 yuhui.Mr 阅读(162) 评论(0) 推荐(0)
摘要: WeRead团队博客 首页 归档 [转载]微信读书 iOS 性能优化总结 发表于 2016-05-03 | 作者: hypo | 微信读书作为一款阅读类的新产品,目前还处于快速迭代,不断尝试的过程中,性能问题也在业务的不断累积中逐渐体现出来。最近的 1.3.0 版本发布后,关于性能问题的用户反馈逐渐 阅读全文
posted @ 2019-03-23 21:31 yuhui.Mr 阅读(318) 评论(0) 推荐(0)
摘要: WeRead团队博客 首页 归档 [转载]iOS 组件化方案探索 发表于 2016-03-19 | 作者: bang | 看了 Limboy(文章1 文章2) 和 Casa (文章) 对 iOS 组件化方案的讨论,写篇文章梳理下思路。 首先我觉得”组件”在这里不太合适,因为按我理解组件是指比较小的功 阅读全文
posted @ 2019-03-23 21:16 yuhui.Mr 阅读(135) 评论(0) 推荐(0)
摘要: WeRead团队博客 首页 归档 [转载]GYHttpMock:iOS HTTP请求模拟工具 发表于 2016-02-25 | 作者: hypo | GYHttpMock 是刚开源的 iOS 请求模拟工具,用于iOS App网络层开发,可以截获指定的 HTTP request,并根据规则,完全替换或 阅读全文
posted @ 2019-03-23 20:45 yuhui.Mr 阅读(366) 评论(0) 推荐(0)
摘要: WeRead团队博客 首页 归档 [转载]MLeaksFinder:精准 iOS 内存泄露检测工具 发表于 2016-02-22 | 作者: zepo | 背景 平常我们都会用 Instrument 的 Leaks / Allocations 或其他一些开源库进行内存泄露的排查,但它们都存在各种问题 阅读全文
posted @ 2019-03-23 20:41 yuhui.Mr 阅读(145) 评论(0) 推荐(0)
摘要: [转载]优化UITableViewCell高度计算的那些事 2015年5月17日 我是前言 这篇文章是我和我们团队最近对 UITableViewCell 利用 AutoLayout 自动高度计算和 UITableView 滑动优化的一个总结。我们也在维护一个开源的扩展,UITableView+FDT 阅读全文
posted @ 2019-03-23 18:12 yuhui.Mr 阅读(244) 评论(0) 推荐(0)
摘要: [转载]黑幕背后的Autorelease 2014年10月15日 我是前言 Autorelease机制是iOS开发者管理对象内存的好伙伴,MRC中,调用[obj autorelease]来延迟内存的释放是一件简单自然的事,ARC下,我们甚至可以完全不知道Autorelease就能管理好内存。而在这背 阅读全文
posted @ 2019-03-23 17:48 yuhui.Mr 阅读(283) 评论(0) 推荐(0)
摘要: [转载]ARC对self的内存管理 2015年1月17日 记录下前两天的一次讨论,源于网络库YTKNetwork中“YTKRequest.m”的- start方法其中的几行代码: - (void)start { // ...... YTKRequest *strongSelf = self; [st 阅读全文
posted @ 2019-03-23 17:43 yuhui.Mr 阅读(105) 评论(0) 推荐(0)
摘要: [转载]从NSArray看类簇 2014年12月18日 Class Clusters Class Clusters(类簇)是抽象工厂模式在iOS下的一种实现,众多常用类,如NSString,NSArray,NSDictionary,NSNumber都运作在这一模式下,它是接口简单性和扩展性的权衡体现 阅读全文
posted @ 2019-03-23 17:33 yuhui.Mr 阅读(215) 评论(0) 推荐(0)
摘要: [转载]使用clang将OC代码转为C++(亲测有效) 2018年11月19日 10:08:47 蜗牛非牛 阅读数:149 2018年11月19日 10:08:47 蜗牛非牛 阅读数:149 最近在研究RunLoop运行机制,想看看他的底层代码是什么样子的,于是百度看看大家如何操作的。最终绝望的发现 阅读全文
posted @ 2019-03-23 17:11 yuhui.Mr 阅读(1078) 评论(0) 推荐(0)
摘要: [转载]神经病院objc runtime入院考试 2014年11月6日 《神经病眼中的objc runtime》北京线下分享活动顺利完成,为了配合讲解编造的几个runtime考题发出来分享下: 为分享内容配合讲解用,可不是为了面试别人的哦(容易被抽) 这几个题分别对应了runtime中几个隐蔽的知识 阅读全文
posted @ 2019-03-23 16:52 yuhui.Mr 阅读(342) 评论(0) 推荐(0)
摘要: [转载]iPhone 6 分辨率与适配 2014年9月10日 分辨率和像素 经新xcode6模拟器验证(分辨率为pt,像素为真实pixel): iPhone5分辨率320x568,像素640x1136,@2x iPhone6分辨率375x667,像素750x1334,@2x iPhone6 Plus 阅读全文
posted @ 2019-03-23 15:52 yuhui.Mr 阅读(113) 评论(0) 推荐(0)
摘要: [转载]iOS 程序 main 函数之前发生了什么 2014年8月30日 我是前言 一个 iOS App 的 main 函数位于 main.m 中,这是我们熟知的程序入口。但对 objc 了解更多之后发现,程序在进入我们的 main 函数前已经执行了很多代码,比如熟知的 + load 方法等。本文将 阅读全文
posted @ 2019-03-23 15:48 yuhui.Mr 阅读(217) 评论(0) 推荐(0)
摘要: [转载]objc与鸭子对象(下) 2014年8月26日 我是前言 这是《objc与鸭子对象》的下半部分,《objc与鸭子对象(上)》中介绍了鸭子类型和它在objc中的实践,以及一个使用NSProxy实现JSON Entity的鸭子类。下半部分介绍鸭子对象的进阶用法,并简单介绍由鸭子对象思想衍生出的依 阅读全文
posted @ 2019-03-23 15:41 yuhui.Mr 阅读(95) 评论(0) 推荐(0)
摘要: [转载]objc与鸭子对象(上) 2014年8月24日 这是《objc与鸭子对象》的上半部分,《objc与鸭子对象(下)》中介绍了鸭子类型的进阶用法、依赖注入以及demo。 我是前言 鸭子类型(Duck Type)即:“当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为 阅读全文
posted @ 2019-03-23 15:37 yuhui.Mr 阅读(169) 评论(0) 推荐(0)
摘要: [转载]xib的动态桥接 2014年7月1日 我是前言 个人很主张使用Interface Builder(以下都简称IB)来构建程序UI,包括storyboard和xib,相比代码更可视和易于修改,尤其在使用AutoLayout的时候,一目了然。但用了这么久IB之后发现一个很大的槽点,就是IB间很难 阅读全文
posted @ 2019-03-23 15:23 yuhui.Mr 阅读(232) 评论(0) 推荐(0)
摘要: [转载]iOS 中集合遍历方法的比较和技巧 2014年4月30日 我是前言 集合的遍历操作是开发中最常见的操作之一,从C语言经典的for循环到利用多核cpu的优势进行遍历,开发中ios有若干集合遍历方法,本文通过研究和测试比较了各个操作方法的效率和优略势,并总结几个使用集合遍历时的小技巧。 ios中 阅读全文
posted @ 2019-03-23 15:18 yuhui.Mr 阅读(163) 评论(0) 推荐(0)
摘要: [转载]NSLog效率低下的原因及尝试lldb断点打印Log 2014年4月22日 我是前言 打Log是我们debug时最简单朴素的方法,NSLog对于objc开发就像printf对于c一样重要。但在使用NSLog打印大量Log,尤其是在游戏开发时(如每一帧都打印数据),NSLog会明显的拖慢程序的 阅读全文
posted @ 2019-03-23 15:13 yuhui.Mr 阅读(123) 评论(0) 推荐(0)
摘要: [转载]Reactive Cocoa Tutorial [4] = 只取所需的Filters 2014年4月19日 我是前言 这是Reactive Cocoa Tutorial系列其中的一篇,上一篇简单介绍了RAC中最重要的RACSignal,下面几篇文章将主要从它的Operations下手,这也是 阅读全文
posted @ 2019-03-23 15:04 yuhui.Mr 阅读(107) 评论(0) 推荐(0)
摘要: [转载]objc@interface的设计哲学与设计技巧 2014年4月13日 我是前言 学习objc时,尤其是先学过其他编程语言再来看objc时,总会对objc的类声明的关键字interface感到有点奇怪,在其它面向对象的语言中通常由class关键字来表示,而interface在java中表示的 阅读全文
posted @ 2019-03-23 15:02 yuhui.Mr 阅读(111) 评论(0) 推荐(0)
摘要: [转载]objc kvo简单探索 2014年3月9日 KVO(Key Value Observing),是观察者模式在Foundation中的实现 KVO的原理 简而言之就是: 当一个object有观察者时,动态创建这个object的类的子类 对于每个被观察的property,重写其set方法 在重 阅读全文
posted @ 2019-03-23 14:43 yuhui.Mr 阅读(113) 评论(0) 推荐(0)
摘要: [转载]ARC下dealloc过程及.cxx_destruct的探究 2014年4月2日 我是前言 这次探索源自于自己一直以来对ARC的一个疑问,在MRC时代,经常写下面的代码: - (void)dealloc { self.array = nil; self.string = nil; // .. 阅读全文
posted @ 2019-03-23 14:41 yuhui.Mr 阅读(170) 评论(0) 推荐(0)
摘要: [转载]iOS 程序员 6 级考试(答案和解释) 2014年3月6日 我是前言 上次发了个ios程序员6级考试题 ,还在不断补充中,开个帖子配套写答案和解释。 1. 下面的代码分别输出什么? @implementation Son : Father- (id)init { self = [super 阅读全文
posted @ 2019-03-23 14:26 yuhui.Mr 阅读(198) 评论(0) 推荐(0)
摘要: [转载]Reactive Cocoa Tutorial [3] = RACSignal的巧克力工厂 2014年3月6日 Reactive Cocoa Tutorial 系列,转载请注明该文源地址 http://blog.sunnyxx.com/2014/03/06/rac_3_racsignal/ 阅读全文
posted @ 2019-03-23 14:17 yuhui.Mr 阅读(125) 评论(0) 推荐(0)
摘要: [转载]Reactive Cocoa Tutorial [2] = 百变RACStream 2014年3月6日 Reactive Cocoa Tutorial 系列,转载请注明该文源地址 – by sunny Overview 在RAC下开发干的最多的事就是建立RACSignal和subscribe 阅读全文
posted @ 2019-03-23 14:06 yuhui.Mr 阅读(108) 评论(0) 推荐(0)
摘要: [转载]Reactive Cocoa Tutorial [1] = 神奇的Macros 2014年3月6日 Reactive Cocoa Tutorial 系列,转载请注明该文源地址 – by sunnyxx 先说说RAC中必须要知道的宏: RAC(TARGET, [KEYPATH, [NIL_VA 阅读全文
posted @ 2019-03-23 13:54 yuhui.Mr 阅读(109) 评论(0) 推荐(0)
摘要: [转载]objc category的秘密 2014年3月5日 category的真面目 objc所有类和对象都是c结构体,category当然也一样,下面是runtime中category的结构: struct _category_t { const char *name; // 1 struct 阅读全文
posted @ 2019-03-23 13:47 yuhui.Mr 阅读(151) 评论(0) 推荐(0)