首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
SimonYe
掘友等级
移动端程序猿
|
Ping An
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
28
文章 28
沸点 0
赞
28
返回
|
搜索文章
最新
热门
深入探索 iOS 内存优化
1945 年,冯·诺伊曼体系结构被提出,奠定了计算机的基础,同时其局限性也限制了计算机的进一步发展,直至现代,计算机体系还是没能逃离其局限性,只是陆续对其组织结构进行优化而已。 冯·诺伊曼体系结将计算机分为运算器、控制器、存储器、输入设备和输出设备五大部分,由于存储器的读写效率…
深入探索 iOS 包体积优化
虽然苹果官方一直在提高最大的可执行文件大小,在 iOS 13 还取消了强制的 OTA 限制,但是超过 200 MB 会默认请求用户下载许可(可在 设置 - iTunes Store与App Store - App下载 中配置),并且iOS 13 以下的超过 200 MB 无法使…
HttpDns 在 iOS 端的接入方案
最近在公司做网络相关的优化,重新整理了下之前对 HttpDNS 的认知并编写了本编文章,以自建 HttpDNS 方案为基准,讲解实际的移动端接入代码,由于每个人的实现方案都有所不同,这里只是抛转引玉,不一定适合所有项目。 当我们发起一个有域名的请求时,需要先经过 DNS 解析成…
深入探索 iOS 启动速度优化
App 的启动时间是体现其性能优劣的一个重要指标,启动时间越快用户的等待时间就越短,提升用户体验感,大厂应用甚至会做到“ 毫秒必究 ”。 本篇文章主要针对冷启动方式进行优化分析,介绍常用的检测工具及优化方法。 Apple 官方的《WWDC Optimizing App Star…
深入探索 iOS 启动速度优化(二进制重排)
去年年底二进制重排的概念被宇宙厂带火了起来,出于学习的目的,综合网上已有资料并总结实现了下,以便对启动优化有更好的了解。 对比了网上的实现方式,抖音通过手动插桩获取的符号数据,包括C++静态初始化、+Load、Block等都需要针对性处理,就其复杂度来说感觉性价比不高;手淘的方…
iOS优秀第三方源码解析(二、深入理解Aspects源码)
AOP(Aspect-oriented programming) 也称之为 “面向切面编程”, 是一种通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术,通俗点将就是类似切片的方式,统一注入代码片段而不需要修改原有代码逻辑,相比于继承等方式,代码的耦合度更低。在ja…
【转】iOS界的毒瘤: Method Swizzling
不知道何时开始iOS面试开始流行起来询问什么是 Runtime,于是 iOSer 一听 Runtime 总是就提起 MethodSwizzling,开口闭口就是黑科技。但其实如果读者留意过C语言的 Hook 原理其实会发现所谓的钩子都是框架或者语言的设计者预留给我们的工具,而不…
iOS底层探索 - 通过objc_msgSend实现iOS方法耗时监控
如果有这么一个需求,要监听所有OC方法的耗时时间,我们要如何实现?本文将描述如何利用 fishhook 去拦截底层的 objc_msgSend 实现,从而达到监控所有 OC 方法的目的。 Ps: 本文不涉及 objc_msgSend 源码解析,只专注于 Hook及耗时统计。对其…
iOS优秀第三方源码解析(一、深入理解fishhook源码)
但MethodSwizzling只能对Objective-C方法进行Hook,如果要对C/C++方法进行Hook操作,可以使用facebook提供的fishhook框架,本文是对该框架的解读。 首先,我们需要了解几个常见的概念,有助于后面源码的阅读。 Mach-O: 在iOS和…
iOS底层探索 - 理解Tagged Pointer
2013年9月苹果推出iPhone5s,iPhone5s配备首个64位架构处理器。正常情况下,数据类型所占字节数与CPU位数息息相关,例如一个NSNumber对象,在32位CPU下数据占用4个字节,指向它的指针类型也是4个字节,固创建一个NSNumber对象要占用8个字节;在6…
下一页
个人成就
文章被点赞
375
文章被阅读
102,463
掘力值
2,209
关注了
13
关注者
302
收藏集
1
关注标签
9
加入于
2016-11-09