android - Fastlane beta lane 无法在 android Flutter 中创建应用构建
问题描述
我无法使用 fastlane 构建 beta 应用程序并且错误说-:
1.AAPT:错误:找不到资源android:attr/fontVariationSettings。2.AAPT:错误:找不到资源android:attr/ttcIndex。
可以使用 Flutter app build 或使用原生 android studio 界面构建应用,但使用 fastlane beta 命令失败。
我的车道是-
lane :beta do
gradle(task: 'assemble', build_type: 'Release')
upload_to_play_store(track: 'beta')
slack(message: 'Successfully distributed a new beta build')
结尾
app/builld.gradle 文件 -
def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
localPropertiesFile.withReader('UTF-8') { reader ->
localProperties.load(reader)
}
}
def flutterRoot = localProperties.getProperty('flutter.sdk')
if (flutterRoot == null) {
throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
}
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
flutterVersionCode = '1'
}
def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
flutterVersionName = '1.0'
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
apply plugin: 'com.google.gms.google-services'
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}
android {
compileSdkVersion 28
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
lintOptions {
disable 'InvalidPackage'
}
defaultConfig {
applicationId "com.tudite.mobileapp"
minSdkVersion 21
targetSdkVersion 28
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.release
}
}
}
flutter {
source '../..'
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'com.google.firebase:firebase-analytics:17.2.3'
implementation 'com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
}
解决方案
在深入研究了 fastlane 文档后,以下解决方案对我有用-
1 - 将 gradle(task: 'assemble', build_type: 'Release') 更改为 gradle(task: 'bundle', build_type: 'Release')
更新的车道是 -
lane :beta do
gradle(task: 'bundle', build_type: 'Release')
supply(
skip_upload_changelogs: true,
skip_upload_screenshots: false,
skip_upload_images: false,
skip_upload_metadata: false
)
upload_to_play_store(
track: 'beta',
version_code: 2,
version_name: "1.0.1",
)
slack(message: 'Successfully distributed a new beta build')
end
推荐阅读
- javascript - 比较两个对象数组并修改原始对象数组
- r - 在 R 中,如何为索引列表中的行设置列值?
- flutter - Syncfusion cutom 小部件 onchanged 参数不带 void 函数 onPressed
- python - 我想用 python 3.9 和 Spyne 2.13.16 发送带有自定义元素标签的响应 xml
- python - 与从字典中查找字谜有关的 Python 问题
- postgresql - 使用 SQLAlchemy/PostgreSQL 使用 Flask 应用程序进行数据库查询时,Gunicorn 总是超时
- debugging - 使用用户空间进程生成 CPU 软锁定
- reactjs - 重新加载页面时的加载屏幕
- javascript - 如何更新状态变量内容?
- c++ - 创建模板类的对象后初始化数组时出现分段错误