Flutter file_picker 插件无法构建项目
Flutter file_picker plugin can't build project
将 file_picker: ^1.13.3 添加到我的依赖项后,项目无法构建并出现此错误
失败:构建失败,出现异常。
- 出了什么问题:
任务“:app:mergeDebugJavaResource”执行失败。
A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
File 'com.android.builder.files.ZipCentralDirectory@7dfb72cd' was deleted, but previous version not found in cache
尝试:
运行 使用 --stacktrace 选项获取堆栈跟踪。 运行 使用 --info 或 --debug 选项以获得更多日志输出。 运行 使用 --scan 以获得完整的见解。
- 获取更多帮助
1 米 8 秒后构建失败
异常:Gradle 任务 assembleDebug 失败,退出代码为 1
但每次我删除它时项目都会成功构建,请帮忙我已经尝试了建议的各种版本但都无济于事
这是请求的 android 清单
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.app.www.app">
<application
android:name="io.flutter.app.FlutterApplication"
android:label="finosellapp"
android:icon="@mipmap/ic_launcher">
<activity
android:name=".MainActivity"
android:launchMode="singleTop"
android:theme="@style/LaunchTheme"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
android:windowSoftInputMode="adjustResize">
<meta-data
android:name="io.flutter.embedding.android.NormalTheme"
android:resource="@style/NormalTheme"
/>
<meta-data
android:name="io.flutter.embedding.android.SplashScreenDrawable"
android:resource="@drawable/launch_background"
/>
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<meta-data
android:name="flutterEmbedding"
android:value="2" />
</application>
</manifest>
因为 file_picker 目前不支持分区存储,您需要在 AndroidManifest.xml 文件中设置 android:requestLegacyExternalStorage="true"
,位于 :
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.app.www.app">
<application
android:name="io.flutter.app.FlutterApplication"
android:label="finosellapp"
android:requestLegacyExternalStorage="true"
android:icon="@mipmap/ic_launcher">
<activity
android:name=".MainActivity"
android:launchMode="singleTop"
android:theme="@style/LaunchTheme"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
android:windowSoftInputMode="adjustResize">
<meta-data
android:name="io.flutter.embedding.android.NormalTheme"
android:resource="@style/NormalTheme"
/>
<meta-data
android:name="io.flutter.embedding.android.SplashScreenDrawable"
android:resource="@drawable/launch_background"
/>
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<meta-data
android:name="flutterEmbedding"
android:value="2" />
</application>
</manifest>
添加:
android:requestLegacyExternalStorage="true" 在你的 AndroidManifest.xml
添加:
android -> build.gradle
中的类路径 'com.android.tools.build:gradle:3.6.3'
ebuildscript {
dependencies {
classpath 'com.android.tools.build:gradle:3.6.3'
}
}
添加:
distributionUrl=https://services.gradle.org/distributions/gradle-6.1.1-all.zip
在你的 gradle-wrapper.properties
创建一个文件'proguard-rules.pro'并写入:
-keep class androidx.lifecycle.** { *; }
在您的 android -> 应用程序 -> build.gradle 添加:
android{
buildTypes {
release{
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
``
将此添加到您的 Android 清单文件
android:requestLegacyExternalStorage="true"
并在 filepicker build.gradle
文件中将应用程序 compileSdkVersion
更改为 28。要获取此文件,您要求在右上角的 andriod 文件夹中打开 MainActivity.class
文件 打开以进行编辑 android studio 单击它作为新 android 项目打开。然后 select file filepicker build.gradle
file.
希望对您有所帮助。
过去 5 天我一直在为这个问题苦苦挣扎,现在只有我自己解决了。
将 file_picker: ^1.13.3 添加到我的依赖项后,项目无法构建并出现此错误
失败:构建失败,出现异常。
- 出了什么问题: 任务“:app:mergeDebugJavaResource”执行失败。
A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade File 'com.android.builder.files.ZipCentralDirectory@7dfb72cd' was deleted, but previous version not found in cache
尝试: 运行 使用 --stacktrace 选项获取堆栈跟踪。 运行 使用 --info 或 --debug 选项以获得更多日志输出。 运行 使用 --scan 以获得完整的见解。
- 获取更多帮助
1 米 8 秒后构建失败 异常:Gradle 任务 assembleDebug 失败,退出代码为 1
但每次我删除它时项目都会成功构建,请帮忙我已经尝试了建议的各种版本但都无济于事
这是请求的 android 清单
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.app.www.app">
<application
android:name="io.flutter.app.FlutterApplication"
android:label="finosellapp"
android:icon="@mipmap/ic_launcher">
<activity
android:name=".MainActivity"
android:launchMode="singleTop"
android:theme="@style/LaunchTheme"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
android:windowSoftInputMode="adjustResize">
<meta-data
android:name="io.flutter.embedding.android.NormalTheme"
android:resource="@style/NormalTheme"
/>
<meta-data
android:name="io.flutter.embedding.android.SplashScreenDrawable"
android:resource="@drawable/launch_background"
/>
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<meta-data
android:name="flutterEmbedding"
android:value="2" />
</application>
</manifest>
因为 file_picker 目前不支持分区存储,您需要在 AndroidManifest.xml 文件中设置 android:requestLegacyExternalStorage="true"
,位于 :
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.app.www.app">
<application
android:name="io.flutter.app.FlutterApplication"
android:label="finosellapp"
android:requestLegacyExternalStorage="true"
android:icon="@mipmap/ic_launcher">
<activity
android:name=".MainActivity"
android:launchMode="singleTop"
android:theme="@style/LaunchTheme"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
android:windowSoftInputMode="adjustResize">
<meta-data
android:name="io.flutter.embedding.android.NormalTheme"
android:resource="@style/NormalTheme"
/>
<meta-data
android:name="io.flutter.embedding.android.SplashScreenDrawable"
android:resource="@drawable/launch_background"
/>
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<meta-data
android:name="flutterEmbedding"
android:value="2" />
</application>
</manifest>
添加: android:requestLegacyExternalStorage="true" 在你的 AndroidManifest.xml
添加: android -> build.gradle
中的类路径 'com.android.tools.build:gradle:3.6.3'ebuildscript {
dependencies {
classpath 'com.android.tools.build:gradle:3.6.3'
}
}
添加:
distributionUrl=https://services.gradle.org/distributions/gradle-6.1.1-all.zip
在你的 gradle-wrapper.properties
创建一个文件'proguard-rules.pro'并写入:
-keep class androidx.lifecycle.** { *; }
在您的 android -> 应用程序 -> build.gradle 添加:
android{
buildTypes {
release{
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
``
将此添加到您的 Android 清单文件
android:requestLegacyExternalStorage="true"
并在 filepicker build.gradle
文件中将应用程序 compileSdkVersion
更改为 28。要获取此文件,您要求在右上角的 andriod 文件夹中打开 MainActivity.class
文件 打开以进行编辑 android studio 单击它作为新 android 项目打开。然后 select file filepicker build.gradle
file.
希望对您有所帮助。
过去 5 天我一直在为这个问题苦苦挣扎,现在只有我自己解决了。