首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Runtime
订阅
啊豪
更多收藏集
微信扫码分享
微信
新浪微博
QQ
6篇文章 · 0订阅
探秘Runtime - Runtime的应用
__attribute__是一套编译器指令,被GNU和LLVM编译器所支持,允许对于__attribute__增加一些参数,做一些高级检查和优化。 __attribute__的语法是,在后面加两个括号,然后写属性列表,属性列表以逗号分隔。在iOS中,很多例如NS_CLASS_A…
runtime之ivar内存布局篇
随着runtime越来越常用,iOSer对runtime的理解要求也越来越高,大家都热衷于runtime源码理解,这篇我带领大家理解下关于Ivar的内容。 在分析Ivar之前,我们要了解下内存对齐的概念。 每个特定平台上的编译器都有自己的默认“对齐系数”,而64位中iOS里这个…
iOS之runtime详解api(四)
今天,讲这个系列的第四篇,是关于Protocol。 这个方法是获得协议的名称。后面我们打印协议就通过这个函数。 我们随便找个类去遵循这个协议,就拿我们前几篇新建的那个Person类吧。 这次没错了,最后的结论是,必须**register**(只要有Class遵循这个Protoc…
fishhook使用场景&源码分析
上一篇我们一起分析了 fishhook的实现原理,但很多东西如果我们仅仅知道原理,其实距离真正吸收它并将其转化成自己的生产力还有很长的路。你得弄清楚别人是怎么利用这个原理去解决问题的,还要借鉴别人的设计思想,再结合我们自己的思考不断地实践和总结,才能真正让知识成为自己的生产力。…
fishhook的实现原理浅析
早些时候,iOS中一提到“黑魔法”、HOOK,很多人第一时间想到的就是 AOP RunTime MethodSwizzling 这些不明觉厉的东西,它们的基本用法其实都不难,真正难的是如何在合适的地方用好它们。 任何事物都有两面性,越强大其可能带来的隐患也越具有毁灭性。苹果提供…
iOS 界的毒瘤:Method Swizzle
iOS 界的毒瘤:Method Swizzle