现有工程 Xcode 16 适配指南

现有工程 Xcode 16 适配,备忘

头文件 import 处理

报错的位置直接根据报错信息导入对应头文件

maskView 替换

Xcode 正则搜索:

@property\s*\((.*?)\)\s*(\w+)\s*\*\s*maskView;

替换为

@property ($1) $2 *kgMaskView;

该操作会将类似

@property (nonatomic, strong) UIImageView  *maskView;
@property (nonatomic, strong) UIButton  *maskView;

替换为

@property (nonatomic, strong) UIImageView  *kgMaskView;
@property (nonatomic, strong) UIButton  *kgMaskView;

再搜索 _maskView 替换为 _kgMaskView

注意,再使用 git 查看替换到的地方,手动鉴别 .maskView 需要的是自定义的还是系统定义的,酌情修改替换.

-[UIApplication openURL:] 替换

正则搜索

\[\s*\[?\s*\w+\s+sharedApplication\s*\]?\s*openURL:\s*\w+\s*\]

在调用处后面添加

options:@{} completionHandler:nil

注意,有些需要同步拿返回值的需要改为在 completionHandler 中处理。