我有以下快车道
desc "Assemble Build,Test Application,and Run On Device"
lane :assemble do
assemble_build
tests
end
desc "Assemble Build"
lane :assemble_build do |options|
gradle(task: "assemble",build_type: @build_type)
end
desc "Run tests in Firebase Test Lab"
lane :tests do
firebase_test_lab_android(
project_id: "mobile-project",gcloud_service_key_file: "client-secret.json",app_apk: "app/build/outputs/apk/release/app-release.apk",type: "robo",devices: [ { model: "Pixel2",version: "28" } ]
)
end
desc "Assemble Build,and Run On Device,Upload App Store"
lane :master_release do
gradle(task: "clean assembleRelease")
upload_to_play_store(track: "internal",skip_upload_metadata: true,skip_upload_images: true,skip_upload_screenshots: true)
tests
end
- 在我的dev分支上,我运行:
bundle exec fastlane assemble release:true
- 在主分支上,我运行:
bundle exec fastlane master_release release:true
由于某种原因,一旦我的分支掌握了,就会出现以下错误:
Google Api错误:apkNotificationmessageKeyUpgradeVersionconflict:APK指定已使用的版本代码。 -APK指定已经使用的版本代码。
此错误基本上是指我的versionCode
中defaultConfig { }
中的android/app/build.gradle
已被使用。
解决此问题的唯一方法是直接推送以掌握新的版本代码,因为显然在dev
推送期间,该版本的获取文件已上传到Google,表明该版本代码已被使用。
有人知道这在哪里,以便我能理解为什么会这样吗?我的印象是版本代码仅在上传到Playstore时才发送。