File tree Expand file tree Collapse file tree 1 file changed +76
-0
lines changed Expand file tree Collapse file tree 1 file changed +76
-0
lines changed Original file line number Diff line number Diff line change
1
+ # CocoaPods Hook
2
+
3
+ > CocoaPods 会在其安装生命周期中提供各种 hook。这使用户可以自定义安装过程的多个时间点对其项目进行更改。
4
+
5
+ > hook方法还可以做一些其他语言脚本的执行,比如执行shell脚本,使用exec 后面跟上具体命令即可
6
+ sh命令文件是一样的
7
+
8
+
9
+
10
+ ## pre_install
11
+
12
+ > pod install 之前可以做一些其他处理
13
+
14
+ ```
15
+ pre_install do |installer|
16
+ puts "pre install hook"
17
+ Pod::UI.puts "pre install hook "
18
+ end
19
+
20
+ ```
21
+
22
+ ## post_install
23
+
24
+ - pod install 之后可以做一些其他处理
25
+
26
+ ```
27
+ post_install do |installer|
28
+ puts "post install hook"
29
+ exec 'pwd'
30
+
31
+ end
32
+
33
+
34
+
35
+ post_install do |installer|
36
+ # 遍历项目中所有target
37
+ installer.pods_project.targets.each do |target|
38
+ # 遍历build_configurations
39
+ target.build_configurations.each do |config|
40
+ # 修改build_settings中的ENABLE_BITCODE
41
+ config.build_settings['ENABLE_BITCODE'] = 'NO'
42
+ end
43
+ end
44
+ end
45
+
46
+
47
+ # 开启 generate_multiple_pod_projects
48
+
49
+ post_install do |installer|
50
+ installer.generated_projects.each do |project|
51
+ project.targets.each do |target|
52
+ target.build_configurations.each do |config|
53
+ config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0'
54
+ end
55
+ end
56
+ end
57
+ end
58
+
59
+
60
+ ```
61
+
62
+ ## post_integrate
63
+
64
+ > ** 1.10新增** 集成是安装过程的最后一步,它负责将生成的 Pods.xcodeproj 与用户的项目集成。这个 hook 将在完成后立即执行。
65
+
66
+ - 注意:这个 hook 在所有 .xcodeproj 保存(写入磁盘)之后执行。对 Pods.xcodeproj 进行更改将需要额外的 save 操作,但这可能会很慢。如果您预计在Pods.xcodeproj 保存到磁盘之前对其进行更改,则建议使用 post_install hook。
67
+
68
+
69
+ ```
70
+ post_integrate do |installer|
71
+
72
+ puts "post_integrate hook"
73
+
74
+ end
75
+
76
+ ```
You can’t perform that action at this time.
0 commit comments