移动端离线包发布方案

最近做了一次关于移动端 web app 更新方案的分享,这篇文章基于这次分享展开。

keynote 下载: WepAppRelease.key

动态发布

现在 web 页面在移动端的地位越来越高,大部分主流 App 采用 native + webview 的 hybrid 模式,加载远程页面受限于网络,本地 webview 引擎,经常会出现渲染慢导致的白屏现象,体验很差,于是离线包方案应运......

移动端模块化架构设计

这篇文档以 iOS 开发为例,老项目开发中一般存在一些弊端:

耦合严重,互相引用,状态无管理随处可修改

耦合强导致的冲突问题不好管理

实现较臃肿,各种功能类的代码混合在一起

无法快速响应业务变化,比如添加或者删除一个功能,影响面较广

重复的功能实现,无复用且影响包大小

内存及多线程问题

所以,需要一个架构来保证稳定高效的协同开发,对代码进行有效的复用,有助于持续集成及按......

开源库 Block Tracker 学习

修改 selector IMP 映射来 hook 方法在开发中很常见,但是 hook 一个 block 实现以及使用场景都较为稀有。最近,腾讯星开源了一个 hook block 的方案 Block Tracker , 使用上看起来如下:

- (void)viewDidLoad {

[super viewDidLoad];

// Begin Track

BTTracker *tracker =......

导航栏切换库 KMNavigationBarTransition

通过导航栏来进行视图切换是 App 最基础的功能,除去定制 Custom Transition 以外,大部分都通过 push 以及 pop 来进行视图的入栈,出栈。

通常使用系统默认的展示方式没有什么问题,但是上下级视图的导航栏颜色不一致时,交互体验就不太友好,比如:

- (void)viewWillAppear:(BOOL)animated {

[super viewWillAppear......

iOS 内存监控分析

概述

最近有在看一些内存监控开源库的实现,所以有做引用和总结。

这篇文章描述了关于内存监控知名开源库的一些实现思路,使用方式以及优缺点等。

FBMemoryProfiler循环引用

Objective-C 使用引用计数去管理内存和释放不使用的对象。内存中的任何一个对象都可以持有(retain)其他的对象,只要前面的对象需要它,对象就会一直保持在内存中。查看这个的一个方法是这个对象持有其他......

OpenGL ES 基础以及 iOS 设备渲染探究优化

客户端的开发,无非离不开数据和展示,而展示这个方面,首当其冲的就是视图、动画的渲染,切换等等。而且在用户的使用中,UI 是这个 APP 的门面,无论功能有多强大,体验不好也是无法留住用户的。

硬件图像显示的基本原理