@nativescript-community/set-version
在 package.json、app.gradle 和 info.plist 中设置版本
npm i --save @nativescript-community/set-version

nativescript-set-version

License: MIT

此工具允许您轻松更新 Nativescript 应用程序的版本。如果找到以下文件,它将更新这些文件

  • ./package.json
  • ./app/App_Resources/Android/src/main/AndroidManifest.xml
  • ./app/App_Resources/Android/app/app.gradle
  • ./app/App_Resources/iOS/Info.plist

版本号格式

为了使用此软件包,您的项目版本必须符合在 semver.org 上描述的格式。

设置和使用

安装 nativescript-set-version 有两种方法:全局和本地。

本地安装

这是推荐安装 nativescript-set-version 的方法。

npm

npm install nativescript-set-version --save-dev

yarn

yarn add nativescript-set-version --dev

然后您可以在项目目录中使用以下命令运行 nativescript-set-version

npm

$ npm run setVersion <version>
-- or --
$ npm run set-version <version>

yarn

$ yarn setVersion <version>
-- or --
$ yarn set-version <version>

全局安装

此安装方法允许您在任何项目中使用 nativescript-set-version。

npm

npm install -g nativescript-set-version

yarn

yarn global add nativescript-set-version

然后您可以在项目目录中使用以下命令运行 nativescript-set-version

setVersion <version>
-- or --
set-version <version>

行为

当调用时,nativescript-set-version 将对您的项目文件进行以下更改

更新包版本

package.json 中的 version 属性将更新为指定的版本。

更新 Android 项目版本

它将更新 app.gradleAndroidManifest.xml 中的 version nameversion code

关于 AndroidManifest.xml

由于此信息被 app.gradle 覆盖,版本信息不应在 AndroidManifest.xml 中。

有关更多信息,请参阅 https://android-docs.cn/studio/publish/versioning。

因此,如果 android:versionCode 和/或 android:versionName 已在文件中,nativescript-set-version 才会在 AndroidManifest.xml 中写入。

更新 iOS 项目版本

它将更新 Info.plist 中的 CFBundleShortVersionStringCFBundleVersion

如何更新版本码和 CFBundleVersion

Android 版本码表示您的版本号作为整数。此软件包使用以下格式生成此整数

<MAJOR><MINOR ON 2 DIGITS><PATCH ON 2 DIGITS><BUILD NUMBER>

例如,您第一次调用 set-version 3.1.4 时,它将生成版本码 301041

如果您使用相同版本调用命令第二次,它将增加构建号,以生成 301042

这也适用于,例如,您调用 set-version 3.1.4-rc.1,然后调用 set-version 3.1.4-rc.2 的情况。

至于 iOS 中的 CFBundleVersion,它将生成格式为 <MAJOR>.<MINOR>.<PATCH>.<BUILD NUMBER> 的字符串。

示例

$ yarn set-version 1.0.0-rc.1
# Output
# ...
# Will set android version code to 100001
# ...
# Will set CFBundleVersion to 1.0.0.1
$ yarn set-version 1.0.0-rc.2
# Output
# ...
# Will set android version code to 100002
# ...
# Will set CFBundleVersion to 1.0.0.2
$ yarn set-version 1.0.0
# Output
# ...
# Will set android version code to 100003
# ...
# Will set CFBundleVersion to 1.0.0.3

许可协议

此软件使用 MIT 许可协议

贡献

您必须使用以下风格指南

此项目包含一个 linting 配置,您应该在 IDE 中设置 eslint,使用 .eslintrc.js