我正在使用Android的React native。我如何在应用程序中更新版本号?因为我得到这个错误。
我正在生成文件按照这个网址https://facebook.github.io/react-native/docs/signed-apk-android.html
我试过修改AndroidManifest.xml文件,但在我构建它之后,该文件会自动修改回来。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.facebook.react"
android:versionCode="1"
android:versionName="1.0" >
字符串
在这里,我修改了XML:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.facebook.react"
android:versionCode="2"
android:versionName="1.1" >
型
之后,构建文件自动变回。
的数据
9条答案
按热度按时间kh212irz1#
您应该在
android/app/build.gradle
中更改versionCode
和versionName
:字符串
请注意,
versionCode
必须是一个大于先前版本的整数,而versionName
是可以向用户显示的人类可读版本。w7t8yxp52#
@Joseph Roque是正确的,您需要更新
android/app/build.gradle
中的版本号。下面是我如何将其自动化并将其绑定到
package.json
和git commits中的包版本中。在
android/app/build.gradle
中:字符串
备注:
versionCode
是一个整数,这一点很重要--所以我们不能在这里使用语义版本控制。这是在播放商店中使用的,用来区分哪些版本在其他版本之后--这就是为什么它与getGitVersion
中的git提交绑定在一起versionName
显示给用户--我在这里使用语义版本控制,并将真实的值存储在package.json
中。3zwjbxry3#
对于那些想要自动执行此操作并同时拥有iOS的用户,您可以使用react-native-version来设置版本号。
你需要做的就是在package.json文件中更新你的version号,然后运行以下命令:
字符串
我希望这可以帮助其他人。
twh00eeo4#
我也有同样的问题,我检查了上面所有的答案,我犯了一个愚蠢的错误,因为没有什么对我有用。
1.版本可以是十进制数字,如1.0或1.0.1等
1.但是VersionCode不能是十进制数它应该是1,2,3等,而不是1.1或2.2
在project/app/build.gradle中,
字符串
jvlzgdj95#
在app.json中的
android
下设置versionCode
:字符串
参考:https://docs.expo.io/versions/latest/workflow/configuration/#versioncodeversion-number-required-by-google-play-increment-by-one-for-each-release-must-be-an-integer-httpsdeveloperandroidcomstudiopublishversioninghtml
zwghvu4y6#
如果有人面临
错误的版本代码eg - 31284
然后确保不在
android/app/build.gradle
中使用SeparateBuildPerCPU架构def enableSeparateBuildPerCPUArchitecture = false
个和
要更新
android/app/build.gradle
中的版本代码和名称更改:字符串
hgncfbus7#
@tgf拥有的东西对Android很好,但我也想要iOS。默认的
Info.plist
将CFBundleShortVersionString
设置为$(MARKETING_VERSION)
,这与android/build.gradle
中的versionName
相同,CFBundleVersion
设置为$(CURRENT_PROJECT_VERSION)
,这与android/build.gradle
中的versionCode
相同。这些在ios/AppName.xcodeproj/
中的project.pbxproj
中定义。这里是一个可以更新xcode文件的prerelease
脚本。如果您有尚未提交的修改,它将在构建号上加1,这样构建时没有任何更改就不会导致文件更改。个字符
使用
pre
脚本运行此命令。scripts/iosUpdateVersion.js
:型
ar5n3qh58#
所有这些React都比实际情况更困难!
即使是“React Native Version“包也不能完成任务。它忘记更新一些文件,如info.plist,遭受毫无意义的“SyntaxError”错误(我可以看到人们有问题),并依赖于删除app.json(你可能不希望这样做)来正确更新弹出的expo项目。
最好只管理自己的脚本解决方案进行版本控制。
1.您可以从下面的gist链接复制节点脚本,以在单个命令中更新以下文件:
友情链接:https://gist.github.com/uxinnuendo/1be49a8faec7031044a87dcf79234cbd
1.保存到您的根项目文件夹,并参考代码注解,根据您的项目更新路径引用。
1.然后运行:
$ node patch.js
1.修改正则表达式模式以满足您的项目配置文件,因为这可能会因您的react native / expo版本而异。某些项目可能会在版本号上使用双引号等。
该脚本目前只处理“补丁”版本控制,并且基于以下整数版本格式,您可以根据需要修改这两种格式。
[SDK版本:xx][主版本:xx][次版本:xxx][补丁版本:**xx**]
例如:330100001
p5cysglq9#
如果您正在使用expo并遇到此问题,请转到
app.json
并将version更改为更高的数字。字符串
您还需要更改
package.json
中的版本型