标签

iOS

从一个拦截问题看 WKWebView 的多进程网络架构

1 minute read

WKWebView 是 iOS 中最重要的网页容器之一。日常开发里,我们通常通过它提供的 API 使用 Web 能力;但一旦遇到请求拦截、Cookie、POST Body、进程通信这类问题,只停留在 API 层往往是不够的,这时就需要进一步理解它背后的 WebKit 架构。

在 iOS 26 上@property 的一个小 bug

2 minute read

前段时间我阅读了 iOS 26 你的 property 崩了吗? 这篇文章,当时没有太在意。结果这一阵子我自己也遇到了类似的 bug。刚好最近我又重新读了一遍新出的 objc4-950 源码,正好读到这一段,也就顺手从源码的角度来分析一下这个问题,以及到底该怎么处理。

如何 hook objc_msgSend

4 minute read

objc_msgSend 可以作为符号被重绑定,但真正困难的不是找到它,而是在不破坏 ABI、寄存器现场和返回路径的前提下完成 hook。

Mach-O 解析

1 minute read

在进入 App 的过程中,需要加载各种文件,这种文件必然是需要符合某种格式来让系统高效的进行阅读。

探究 block (二):block 截获变量

7 minute read

0. 截获自动变量值 block 中,block 表达式截获所使用的自动变量的值,是保存该自动变量的瞬间值。在执行完 block 之后,即使改写 block 中使用的自动变量的值,也不会影响 block 执行时自动变量的值————这就是“截获”的意思;。

Back to Top ↑

Objective-C

在 iOS 26 上@property 的一个小 bug

2 minute read

前段时间我阅读了 iOS 26 你的 property 崩了吗? 这篇文章,当时没有太在意。结果这一阵子我自己也遇到了类似的 bug。刚好最近我又重新读了一遍新出的 objc4-950 源码,正好读到这一段,也就顺手从源码的角度来分析一下这个问题,以及到底该怎么处理。

如何 hook objc_msgSend

4 minute read

objc_msgSend 可以作为符号被重绑定,但真正困难的不是找到它,而是在不破坏 ABI、寄存器现场和返回路径的前提下完成 hook。

探究 block (二):block 截获变量

7 minute read

0. 截获自动变量值 block 中,block 表达式截获所使用的自动变量的值,是保存该自动变量的瞬间值。在执行完 block 之后,即使改写 block 中使用的自动变量的值,也不会影响 block 执行时自动变量的值————这就是“截获”的意思;。

Back to Top ↑

Network

伯阳的网络笔记:TCP 基础概述

3 minute read

1. TCP是什么? 互联网有两个核心协议: IP 和 TCP。IP,即 Internet Protocol(因特网协议)负责联网主机之间的路由选择和寻址;TCP,即 Transmission Control Protocol(传输控制协议)。

伯阳的网络笔记:HTTP 基础

2 minute read

网络分层 我们都知道,互联网是一个极其复杂的体系,包含了大量的应用程序和协议、各种类型的端系统、分组交换机和各种类型的链路级媒体。为了将这些整理,我们将整个网路进行了抽象分层。

伯阳的网络笔记:HTTP/2 基础

less than 1 minute read

1. HTTP/1.x 的问题 不得不说, HTTP/1.1 是一个伟大的协议,现在仍然有非常多的网站使用它,充分说明了它的健壮、巧妙。但是,它毕竟是一个创建于互联网时代前的协议,虽然已经很有预见性了,但是仍然有些过时了。主要有以下几个问题

伯阳的网络笔记:DNS

4 minute read

先出几个问题: DNS 是什么?有什么用? DNS 的请求过程是怎么样的。递归查询和迭代查询是什么?有何区别。 DNS 中用到了哪些协议?为什么要用? DNS 有什么缺点。

Back to Top ↑

property

在 iOS 26 上@property 的一个小 bug

2 minute read

前段时间我阅读了 iOS 26 你的 property 崩了吗? 这篇文章,当时没有太在意。结果这一阵子我自己也遇到了类似的 bug。刚好最近我又重新读了一遍新出的 objc4-950 源码,正好读到这一段,也就顺手从源码的角度来分析一下这个问题,以及到底该怎么处理。

Back to Top ↑

runtime

如何 hook objc_msgSend

4 minute read

objc_msgSend 可以作为符号被重绑定,但真正困难的不是找到它,而是在不破坏 ABI、寄存器现场和返回路径的前提下完成 hook。

Back to Top ↑

block

探究 block (二):block 截获变量

7 minute read

0. 截获自动变量值 block 中,block 表达式截获所使用的自动变量的值,是保存该自动变量的瞬间值。在执行完 block 之后,即使改写 block 中使用的自动变量的值,也不会影响 block 执行时自动变量的值————这就是“截获”的意思;。

Back to Top ↑

HTTP

伯阳的网络笔记:HTTP 基础

2 minute read

网络分层 我们都知道,互联网是一个极其复杂的体系,包含了大量的应用程序和协议、各种类型的端系统、分组交换机和各种类型的链路级媒体。为了将这些整理,我们将整个网路进行了抽象分层。

伯阳的网络笔记:HTTP/2 基础

less than 1 minute read

1. HTTP/1.x 的问题 不得不说, HTTP/1.1 是一个伟大的协议,现在仍然有非常多的网站使用它,充分说明了它的健壮、巧妙。但是,它毕竟是一个创建于互联网时代前的协议,虽然已经很有预见性了,但是仍然有些过时了。主要有以下几个问题

伯阳的网络笔记:DNS

4 minute read

先出几个问题: DNS 是什么?有什么用? DNS 的请求过程是怎么样的。递归查询和迭代查询是什么?有何区别。 DNS 中用到了哪些协议?为什么要用? DNS 有什么缺点。

Back to Top ↑

AI

AI与美伊战事一个月回顾:战场博弈、产业冲击与金融震荡

less than 1 minute read

2026年2月28日,美以联军对伊朗发动大规模军事袭击,截至3月30日,该地区冲突已持续近一个月。与以往战争中科技仅承担辅助角色不同,人工智能(AI)在此次战事中全程深度参与,既是重塑战场博弈模式的关键变量,其影响也随战事升级逐步渗透至AI产业上下游及全球金融市场。一个月以来,AI与美伊战事相互交织、相互作用,既...

读《工程控制论》悟 Agent 开发

1 minute read

作为一名深耕 iOS 开发多年的老炮,最近一头扎进 Agent 开发领域越挖越上头 —— 本以为堆大模型、调 Prompt 就能搞定落地,结果踩了无数坑才彻底明白:实验室demo跑通不算真本事,千次迭代、复杂扰动下不崩溃、不跑偏,才是生产级Agent的核心门槛。 上周抱着啃经典理论的心态翻钱学森先生的《工程控制论...

Back to Top ↑

weak

Back to Top ↑

memory

Back to Top ↑

DNS

伯阳的网络笔记:DNS

4 minute read

先出几个问题: DNS 是什么?有什么用? DNS 的请求过程是怎么样的。递归查询和迭代查询是什么?有何区别。 DNS 中用到了哪些协议?为什么要用? DNS 有什么缺点。

Back to Top ↑

Web

伯阳的网络笔记:HTTP 基础

2 minute read

网络分层 我们都知道,互联网是一个极其复杂的体系,包含了大量的应用程序和协议、各种类型的端系统、分组交换机和各种类型的链路级媒体。为了将这些整理,我们将整个网路进行了抽象分层。

伯阳的网络笔记:HTTP/2 基础

less than 1 minute read

1. HTTP/1.x 的问题 不得不说, HTTP/1.1 是一个伟大的协议,现在仍然有非常多的网站使用它,充分说明了它的健壮、巧妙。但是,它毕竟是一个创建于互联网时代前的协议,虽然已经很有预见性了,但是仍然有些过时了。主要有以下几个问题

Back to Top ↑

Transport

伯阳的网络笔记:TCP 基础概述

3 minute read

1. TCP是什么? 互联网有两个核心协议: IP 和 TCP。IP,即 Internet Protocol(因特网协议)负责联网主机之间的路由选择和寻址;TCP,即 Transmission Control Protocol(传输控制协议)。

Back to Top ↑

TLS

Back to Top ↑

HTTPS

Back to Top ↑

Security

Back to Top ↑

objc_msgSend

如何 hook objc_msgSend

4 minute read

objc_msgSend 可以作为符号被重绑定,但真正困难的不是找到它,而是在不破坏 ABI、寄存器现场和返回路径的前提下完成 hook。

Back to Top ↑

atomic

Back to Top ↑

copy

Back to Top ↑

closure

探究 block (二):block 截获变量

7 minute read

0. 截获自动变量值 block 中,block 表达式截获所使用的自动变量的值,是保存该自动变量的瞬间值。在执行完 block 之后,即使改写 block 中使用的自动变量的值,也不会影响 block 执行时自动变量的值————这就是“截获”的意思;。

Back to Top ↑

strong

Back to Top ↑

Internet

伯阳的网络笔记:DNS

4 minute read

先出几个问题: DNS 是什么?有什么用? DNS 的请求过程是怎么样的。递归查询和迭代查询是什么?有何区别。 DNS 中用到了哪些协议?为什么要用? DNS 有什么缺点。

Back to Top ↑

HTTP2

伯阳的网络笔记:HTTP/2 基础

less than 1 minute read

1. HTTP/1.x 的问题 不得不说, HTTP/1.1 是一个伟大的协议,现在仍然有非常多的网站使用它,充分说明了它的健壮、巧妙。但是,它毕竟是一个创建于互联网时代前的协议,虽然已经很有预见性了,但是仍然有些过时了。主要有以下几个问题

Back to Top ↑

TCP

伯阳的网络笔记:TCP 基础概述

3 minute read

1. TCP是什么? 互联网有两个核心协议: IP 和 TCP。IP,即 Internet Protocol(因特网协议)负责联网主机之间的路由选择和寻址;TCP,即 Transmission Control Protocol(传输控制协议)。

Back to Top ↑

UDP

Back to Top ↑

IP

Back to Top ↑

Mach-O

Mach-O 解析

1 minute read

在进入 App 的过程中,需要加载各种文件,这种文件必然是需要符合某种格式来让系统高效的进行阅读。

Back to Top ↑

Binary

Mach-O 解析

1 minute read

在进入 App 的过程中,需要加载各种文件,这种文件必然是需要符合某种格式来让系统高效的进行阅读。

Back to Top ↑

Linker

Mach-O 解析

1 minute read

在进入 App 的过程中,需要加载各种文件,这种文件必然是需要符合某种格式来让系统高效的进行阅读。

Back to Top ↑

hook

如何 hook objc_msgSend

4 minute read

objc_msgSend 可以作为符号被重绑定,但真正困难的不是找到它,而是在不破坏 ABI、寄存器现场和返回路径的前提下完成 hook。

Back to Top ↑

performance

Back to Top ↑

object-model

Back to Top ↑

bug

在 iOS 26 上@property 的一个小 bug

2 minute read

前段时间我阅读了 iOS 26 你的 property 崩了吗? 这篇文章,当时没有太在意。结果这一阵子我自己也遇到了类似的 bug。刚好最近我又重新读了一遍新出的 objc4-950 源码,正好读到这一段,也就顺手从源码的角度来分析一下这个问题,以及到底该怎么处理。

Back to Top ↑

WebKit

从一个拦截问题看 WKWebView 的多进程网络架构

1 minute read

WKWebView 是 iOS 中最重要的网页容器之一。日常开发里,我们通常通过它提供的 API 使用 Web 能力;但一旦遇到请求拦截、Cookie、POST Body、进程通信这类问题,只停留在 API 层往往是不够的,这时就需要进一步理解它背后的 WebKit 架构。

Back to Top ↑

Browser

从一个拦截问题看 WKWebView 的多进程网络架构

1 minute read

WKWebView 是 iOS 中最重要的网页容器之一。日常开发里,我们通常通过它提供的 API 使用 Web 能力;但一旦遇到请求拦截、Cookie、POST Body、进程通信这类问题,只停留在 API 层往往是不够的,这时就需要进一步理解它背后的 WebKit 架构。

Back to Top ↑

Coding

Back to Top ↑

Productivity

Back to Top ↑

Agent

读《工程控制论》悟 Agent 开发

1 minute read

作为一名深耕 iOS 开发多年的老炮,最近一头扎进 Agent 开发领域越挖越上头 —— 本以为堆大模型、调 Prompt 就能搞定落地,结果踩了无数坑才彻底明白:实验室demo跑通不算真本事,千次迭代、复杂扰动下不崩溃、不跑偏,才是生产级Agent的核心门槛。 上周抱着啃经典理论的心态翻钱学森先生的《工程控制论...

Back to Top ↑

Engineering

读《工程控制论》悟 Agent 开发

1 minute read

作为一名深耕 iOS 开发多年的老炮,最近一头扎进 Agent 开发领域越挖越上头 —— 本以为堆大模型、调 Prompt 就能搞定落地,结果踩了无数坑才彻底明白:实验室demo跑通不算真本事,千次迭代、复杂扰动下不崩溃、不跑偏,才是生产级Agent的核心门槛。 上周抱着啃经典理论的心态翻钱学森先生的《工程控制论...

Back to Top ↑

Geopolitics

AI与美伊战事一个月回顾:战场博弈、产业冲击与金融震荡

less than 1 minute read

2026年2月28日,美以联军对伊朗发动大规模军事袭击,截至3月30日,该地区冲突已持续近一个月。与以往战争中科技仅承担辅助角色不同,人工智能(AI)在此次战事中全程深度参与,既是重塑战场博弈模式的关键变量,其影响也随战事升级逐步渗透至AI产业上下游及全球金融市场。一个月以来,AI与美伊战事相互交织、相互作用,既...

Back to Top ↑

Finance

AI与美伊战事一个月回顾:战场博弈、产业冲击与金融震荡

less than 1 minute read

2026年2月28日,美以联军对伊朗发动大规模军事袭击,截至3月30日,该地区冲突已持续近一个月。与以往战争中科技仅承担辅助角色不同,人工智能(AI)在此次战事中全程深度参与,既是重塑战场博弈模式的关键变量,其影响也随战事升级逐步渗透至AI产业上下游及全球金融市场。一个月以来,AI与美伊战事相互交织、相互作用,既...

Back to Top ↑