无法在 Flutter 中构建已签名的 APK:任务“:app:uploadCrashlyticsMappingFileRelease”执行失败。 java.net.SocketException: 套接字关闭
Cannot build signed APK in Flutter: Execution failed for task ':app:uploadCrashlyticsMappingFileRelease'. java.net.SocketException: Socket closed
我一直在开发 Flutter 应用程序,我能够使用 Android Studio 对话框成功构建甚至签署我的 APK。为此,我在 Android Studio 中打开 android 文件夹,继续构建 > 生成签名 APK。
今天停止工作并显示消息:
> Task :app:uploadCrashlyticsMappingFileRelease FAILED
Execution failed for task ':app:uploadCrashlyticsMappingFileRelease'.
> java.net.SocketException: Socket closed
我的 build.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'
apply plugin: 'com.google.firebase.crashlytics'
android {
compileSdkVersion 30
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
lintOptions {
disable 'InvalidPackage'
}
defaultConfig {
applicationId "my.app"
minSdkVersion 23
targetSdkVersion 30
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
setProperty("archivesBaseName", applicationId + "." + flutterVersionName + "." + flutterVersionCode)
}
buildTypes {
release {
minifyEnabled true
useProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
// ndk {
// abiFilters 'armeabi-v7a','arm64-v8a','x86_64'
// }
}
}
}
flutter {
source '../..'
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation platform('com.google.firebase:firebase-bom:26.2.0')
implementation 'com.google.firebase:firebase-analytics-ktx'
implementation 'com.google.firebase:firebase-auth-ktx'
}
我很困惑,为什么会这样。在过去的日子里,我只编辑了 *.dart 文件,根本没有更改 Android 项目。我仍然可以使用 Build > Build Bundle(s)/APK(s) > Build APK 构建调试 APK。
我刚刚重新启动了我的系统,现在一切都恢复正常了,没关系。
我一直在开发 Flutter 应用程序,我能够使用 Android Studio 对话框成功构建甚至签署我的 APK。为此,我在 Android Studio 中打开 android 文件夹,继续构建 > 生成签名 APK。
今天停止工作并显示消息:
> Task :app:uploadCrashlyticsMappingFileRelease FAILED
Execution failed for task ':app:uploadCrashlyticsMappingFileRelease'.
> java.net.SocketException: Socket closed
我的 build.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'
apply plugin: 'com.google.firebase.crashlytics'
android {
compileSdkVersion 30
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
lintOptions {
disable 'InvalidPackage'
}
defaultConfig {
applicationId "my.app"
minSdkVersion 23
targetSdkVersion 30
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
setProperty("archivesBaseName", applicationId + "." + flutterVersionName + "." + flutterVersionCode)
}
buildTypes {
release {
minifyEnabled true
useProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
// ndk {
// abiFilters 'armeabi-v7a','arm64-v8a','x86_64'
// }
}
}
}
flutter {
source '../..'
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation platform('com.google.firebase:firebase-bom:26.2.0')
implementation 'com.google.firebase:firebase-analytics-ktx'
implementation 'com.google.firebase:firebase-auth-ktx'
}
我很困惑,为什么会这样。在过去的日子里,我只编辑了 *.dart 文件,根本没有更改 Android 项目。我仍然可以使用 Build > Build Bundle(s)/APK(s) > Build APK 构建调试 APK。
我刚刚重新启动了我的系统,现在一切都恢复正常了,没关系。