👨🏻‍💻's 博客

慢品人间烟火色,闲观万事岁月长

0%

前言

出于”折腾”的目的,在使用github+hexo搭建blog后,将原来*.io*的域名绑定为个人申请的域名

准备

  1. 域名
  2. DNS服务器
阅读全文 »

方法编码

概念

To assist the runtime system, the compiler encodes the return and argument types for each method in a character string and associates the string with the method selector.

为了辅助运行时系统,编译器对字符串中每个方法的返回和参数类型进行编码,并将字符串与方法选择器相关联

阅读全文 »

类的数据结构(runtime.h)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
struct objc_class {
Class isa OBJC_ISA_AVAILABILITY;

#if !__OBJC2__
Class super_class OBJC2_UNAVAILABLE;
const char *name OBJC2_UNAVAILABLE;
long version OBJC2_UNAVAILABLE;
long info OBJC2_UNAVAILABLE;
long instance_size OBJC2_UNAVAILABLE;
struct objc_ivar_list *ivars OBJC2_UNAVAILABLE;
struct objc_method_list **methodLists OBJC2_UNAVAILABLE;
struct objc_cache *cache OBJC2_UNAVAILABLE;
struct objc_protocol_list *protocols OBJC2_UNAVAILABLE;
#endif

} OBJC2_UNAVAILABLE;
/* Use `Class` instead of `struct objc_class *` */
阅读全文 »

场景

  当通过.ipa文件的Info.plist文件去获得应用的配置信息时,若通过视图方式去找到Info.plist文件,感觉略显麻烦,因此决定使用shell脚本来解决该问题

阅读全文 »