背景
由于最近在開發(fā)flutter項目,每次執(zhí)行flutter clean
以后,iOS和Android工程就會被清除并重新生成坛增,工程配置需要重新修改,這是一步相當(dāng)煩人的操作??????薄腻。那能不能讓flutter每次創(chuàng)建項目或者flutter clean以后生成的項目都包含自己想要的配置呢收捣?The answer is yes~?????? 接下來就告訴你如何操作!(由于本人是iOS開發(fā)庵楷,以下均以iOS工程為例罢艾,Android修改方法類似)
模板工程
首先,想要修改模板先要找到模板的存放位置尽纽,模板存放在
flutter SDK目錄下--> packages/flutter_tools/templates
在templates目錄下可以看到有6個文件目錄咐蚯,且模板文件或目錄一般以.tmpl
結(jié)尾!
目錄 | 說明 |
---|---|
app | flutter項目的模板 |
cocoapods | iOS工程podfile模板(module除外) |
driver | flutter測試代碼模板 |
module | iOS工程podfile模板(module除外) |
package | package沒有示例工程 |
plugin | plugin中的示例工程使用的是app目錄下的模板弄贿,podfile使用的是cocoapods下的podfile模板 |
使用場景示例
- iOS工程證書相關(guān)設(shè)置
1.首先要找到project.pbxproj
文件,不了解的可以看看這篇《全面認(rèn)識Xcode中的project.pbxproj文件和簡單運用》春锋,看完估計也記不住~??
app下的在
app -> ios-objc.tmpl -> Runner.xcodeproj -> 右擊顯示包內(nèi)容 -> project.pbxproj.tmpl
module下的在
module -> iOS -> host_app_ephemeral -> Runner.xcodeproj.tmpl -> project.pbxproj.tmpl
2.將下邊這些配置字段放在project.pbxproj.tmpl
對應(yīng)位置上即可
CODE_SIGN_STYLE = Manual;
PROVISIONING_PROFILE_SPECIFIER = 證書名稱;
DEVELOPMENT_TEAM = 開發(fā)團(tuán)隊;
PRODUCT_BUNDLE_IDENTIFIER = {{iosIdentifier}};
app下模板修改完成后,app和plugin生成的iOS工程將包含自己配置的證書信息差凹,module同理
-
配置Podfile
Plugin使用的podfile
模板在cocoapods目錄下
module使用的podfile
模板在
module -> iOS -> host_app_ephemeral_cocoapods -> Podfile.copy.tmpl
找到podfile模板便可做一些自己的配置期奔,比如說添加自己的source
總結(jié)
總之,找到模板位置基本上就可以 猥瑣欲為 了~??