我正在构建一个本机iOS应用程序,并希望:
1)在应用程序本身的package.json文件中显示应用程序的当前版本。
具体来说:既然我已经实施了codepush,我想在“设置”页面上显示当前的应用版本,以便应用用户可以判断他们的应用是否已升级。我当前在package.json文件中设置了版本号,并使用this shell脚本将其传播到xcode项目。如果有更好的方法来管理/更新项目版本号,请告诉我们!
2)根据xcode中的构建变量执行某些.js代码。
我在xcode中有三个构建配置(调试,暂存,发布)设置,我想指定updateDialog: true
标志,仅针对Staging构建进行codepush。我还想在设置页面上显示这是一个Debug,Staging还是Release build。
完成这些事情的最佳方式是什么?
是否有最佳做法来设置/同步项目的版本号并在应用内访问它,或者这些东西通常只是手工编码?
Fwiw,this答案是相关的,但没有说明xcode定义的具体环境变量会对我有所帮助,并且不会对版本问题说话。
答案 0 :(得分:1)
async function getAppVersion() {
const {appVersion} = await codePush.getConfiguration();
const meta = await codePush.getUpdateMetadata();
if (!meta) return {appVersion};
const {label} = meta;
return {appVersion, label};
}
label
将包含codepush发布标签(默认为v1,v2 ......)
对于env变量react-native-config也许可以帮到你。我使用fastlane和increment_build_number(iOS)以及手工制作的fastlane代码(Android)来自动增加内部版本号。说实话,我自己在最佳实践搜索中。