如果我按照 Flutter 中的指南进行操作,为什么会出现 Gradle 错误?
Why I'm getting Gradle error if I follow the guide in Flutter?
我已经尝试从 Flutter 导出应用程序包,问题出在签名配置上,默认是调试(并且它有效)但是如果我发布显示 Gradle 错误并且无法继续。如果我按照 Flutter 发布指南进行操作,有哪些步骤或哪里错了?
我已经创建了 buildType,但即使我 select 调试版本仍然出现错误。
android {
compileSdkVersion 29
lintOptions {
disable 'InvalidPackage'
checkReleaseBuilds false
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.homework.practice1"
minSdkVersion 21
targetSdkVersion 29
ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64'
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
我希望导出 32 位和 64 位应用程序包,但是当我进行调试签名时,它只有一个。如果要发布 select 会导致 Gradle 错误 1.
您可以在 build.gradle 中添加此代码,在 "flutter" 之后,如下所示,当您生成 "build",
flutter {
source '../..'
}
afterEvaluate {
mergeReleaseJniLibFolders.doLast {
def archTypes = ["arm-release", "arm64-release"]
archTypes.forEach { item ->
copy {
from zipTree("$flutterRoot/bin/cache/artifacts/engine/android-$item/flutter.jar")
include 'lib/*/libflutter.so'
into "$buildDir/intermediates/jniLibs/release/"
eachFile {
it.path = it.path.replaceFirst("lib/", "")
}
}
}
}
}
我已经尝试从 Flutter 导出应用程序包,问题出在签名配置上,默认是调试(并且它有效)但是如果我发布显示 Gradle 错误并且无法继续。如果我按照 Flutter 发布指南进行操作,有哪些步骤或哪里错了?
我已经创建了 buildType,但即使我 select 调试版本仍然出现错误。
android {
compileSdkVersion 29
lintOptions {
disable 'InvalidPackage'
checkReleaseBuilds false
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.homework.practice1"
minSdkVersion 21
targetSdkVersion 29
ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64'
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
我希望导出 32 位和 64 位应用程序包,但是当我进行调试签名时,它只有一个。如果要发布 select 会导致 Gradle 错误 1.
您可以在 build.gradle 中添加此代码,在 "flutter" 之后,如下所示,当您生成 "build",
flutter {
source '../..'
}
afterEvaluate {
mergeReleaseJniLibFolders.doLast {
def archTypes = ["arm-release", "arm64-release"]
archTypes.forEach { item ->
copy {
from zipTree("$flutterRoot/bin/cache/artifacts/engine/android-$item/flutter.jar")
include 'lib/*/libflutter.so'
into "$buildDir/intermediates/jniLibs/release/"
eachFile {
it.path = it.path.replaceFirst("lib/", "")
}
}
}
}
}