首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
iOS 底层编译
订阅
manajay
更多收藏集
微信扫码分享
微信
新浪微博
QQ
42篇文章 · 0订阅
Objective-C runtime 源码调试
Apple官方已经将Objective-C runtime的源码开源,在学习Objective-C runtime的过程中可以使用开源的代码一边调试一边学习。本文旨在帮助大家搭建调试环境。
送你一篇源码分析,一起来一次思维风暴吧!!!
前言 学如逆水行舟,不进则退!!共勉!!! 阳光不燥,微风很暖。今天想跟大家一起分析一份GCD源码。如有错误之处或者更好想法可以在留言区留言讨论。写的还写的话,点点赞点点关注就好。 0x01 Mach
iOS 符号二三事
调试符号:包括行号信息的调试符号信息,行号信息中记录了函数和变量所对应的文件和文件行号。 Mach-O 中可以保存有调试信息,Mach-O采用DWARF (Debug With Arbitrary Record Foramt) 的标准调试信息格式。DWARF 中调试信息也可以单…
iOS疑难Crash的寄存器赋值追踪排查技术
我们会借助一些崩溃日志收集库来定位和排查线上的崩溃信息,但是有些崩溃堆栈所提供的信息有限又不是必现崩溃,很难直观排查出问题的所在。这里我给大家分享一个采用寄存器赋值追踪的技术来排查和分析崩溃日志的技巧。话不多说先看案例: 从上面的崩溃信息大概可以看出这是一个GCD队列线程调用时…
自研 iOS 热更新机制——OCPack技术方案总结
I. 方案简介 OCPack是一种 iOS 平台上 App 动态化技术方案,用户可以使用 Objective-C 语言编写待动态化的功能逻辑(生成.m文件),然后通过OCPack提供的工具链生成 patch 文件(.bin格式)。客户端则内置了一个基于 Native 环境的的虚…
【iOS内功】ARM汇编实战,解析iOS14 UICollectionView死循环问题
9月初iOS14正式发布,线上版本新冒出许多Crash。有一个Crash,UICollectionView刷新逻辑死循环,卡死了主线程。 阳差阳错,中美两个程序员的“误会”造成了这个Crash。 App有一个页面,自定义了一个XXCollectionView。XXCollect…
【学习总结】06 | App 如何通过注入动态库的方式实现极速编译调试?
本章是上一节编译器、链接器 内容的扩展延伸内容 ----- 动态链接器,所以,如果没有看过上一篇文章的同学,建议先看看:【学习总结】05 | 链接器:符号是怎么绑定到地址上的? | iHTCboy's blog。 本章也是沿用之前的风格套路,在讲解 iOS 的动态链接器 如何实…
iOS编译速度如何稳定提高10倍以上之一
经过多年的发展,美柚iOS项目代码已经达到40W行+的规模,所使用的 Pod 库的数量达到了110+,App Store 安装包210M+,在这么大的项目规模下(CI机器 MAC配置:3 GHz 8-Core Intel Xeon E5;时间:发布20min+),(开发机器iM…
分析字节跳动解决OOM的在线Memory Graph技术实现
什么是OOM,为什么会发生OOM以及其原因分析,大家去看原文就好了,本文主要分析APP内存使用到达阈值后,如何采集MemoryGraph信息并分析。什么是MemoryGraph?这个时候就进入了断点模
客户端开发基础知识——写文件避“坑”指南
在客户端开发过程中,写文件几乎是最常见的操作之一了。操作系统、标准库、以及各级应用框架都提供了各种各样的文件写 API,如: 本文会对文件读写相关的几个 API 和其内部机制进行讲解,并一一回答上面的这些问题(相应的部分会标上问题编号)。 1. 文件读写系统调用 要了解文件写的…