本文指南如何自定义Cordova的构建过程。
本文的示例重点介绍如何在Corodva中构建iOS应用程序和如何将应用程序设置为支持的64位架构。
您可以通过build-release.xcconfig,build-debug.xcconfig文件为xcodebuild命令添加更多扩展配置参数,这些文件是Cordova的构建核心文件。
本文还指导您使用Corodova Hook,以及如何使用" before_build" hook动作更新xcodebuild命令的 -xcconfig 参数。 您可以了解Cordova Hook的想法,并使用Cordova的其他钩子动作来部署您的想法。
我希望这篇文章可以帮助许多使用Cordova框架并希望自定义Cordova构建处理的人。
[调查]
XCode中有一些配置允许我们限制支持的应用程序架构。修改Xcode的Build Settings中的所有设置:
支持的架构64位设置的配置值如下:
Cordova building命令不支持额外配置的设置。这意味着我们无法使用额外的应用程序配置来构建应用程序。
Cordova支持HOOKs机制,允许挂钩执行如下:构建,运行,准备,编译,平台添加,平台rm,......这样,我们可以使用钩子机制将我们的扩展流程注入到构建过程Cordova的参考链接http://cordova.apache.org/docs/en/latest/guide/appdev/hooks/index.html
Cordova构建机制在 platforms / ios / cordova / build-release.xcconfig , build-debug.xcconfig >为 xcodebuild 命令设置额外配置的文件夹。这样,我们可以使用这些文件进行自定义。
用于 xcodebuild 命令的 -xcconfig 参数的体系结构参数设置:
[溶液]
使用HOOK机制:
<hook src="hooks/before_build.sh" type="before_build" />
使用Corodova的构建配置文件:
build-release.xcconfig 文件的示例内容:
#include "build.xcconfig"
CODE_SIGN_IDENTITY = iPhone Distribution
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution
ONLY_ACTIVE_ARCH = YES
ARCHS = arm64
VALID_ARCHS = arm64
#include "build-extras.xcconfig"
请注意,我们为支持的64位架构添加以下配置:
ONLY_ACTIVE_ARCH = YES
ARCHS = arm64
VALID_ARCHS = arm64
注意:上面的CODE_SIGN_IDENTITY设置取决于您的签名配置文件。在我的例子中是iPhone发布。
shell脚本 before_build.sh 的内容:
#!/usr/bin/env bash
#Overwrite the configurations files of Cordova
cp "hooks/build/ios/build-debug.xcconfig" "platforms/ios/cordova/";
cp "hooks/build/ios/build-release.xcconfig" "platforms/ios/cordova/";
cordova build ios -device
===
谢谢,
DQ。