连接Firebase后Flutter应用安装失败,请求帮助解决
解决Flutter连接Firebase后INSTALL_FAILED_INVALID_APK(提取原生库失败res=-2)问题
问题描述
集成Firebase后运行Flutter项目,出现APK安装失败错误,具体输出:
Running Gradle task 'assembleDebug'... √ Built build\app\outputs\flutter-apk\app-debug.apk Installing build\app\outputs\flutter-apk\app-debug.apk... Error: ADB exited with exit code 1 Performing Streamed Install adb: failed to install C:\Users\Ahmed\Desktop\educationalapp\build\app\outputs\flutter-apk\app-debug.apk: Failure [INSTALL_FAILED_INVALID_APK: INSTALL_FAILED_INVALID_APK: Failed to extract native libraries, res=-2] Error launching application on sdk gphone16k x86 64.
已尝试flutter clean、flutter pub get、flutter build apk,问题未解决。
解决方案
添加原生库提取配置
打开android/app/src/main/AndroidManifest.xml,在<application>标签中加入android:extractNativeLibs="true":<application android:name="${applicationName}" android:icon="@mipmap/ic_launcher" android:label="educationalapp" android:extractNativeLibs="true">适配NDK架构
编辑android/app/build.gradle,在defaultConfig块中添加NDK架构过滤,覆盖模拟器所需的x86_64架构:defaultConfig { applicationId "com.example.educationalapp" minSdkVersion 21 targetSdkVersion 33 versionCode flutterVersionCode.toInteger() versionName flutterVersionName // 添加以下配置 ndk { abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64' } }深度清理重建项目
执行以下命令彻底清理缓存并重建:flutter clean cd android gradlew clean gradlew assembleDebug cd .. flutter pub get flutter run重置模拟器环境
重启当前模拟器,或创建新的x86_64系统镜像模拟器,确保系统版本与项目compileSdkVersion一致。检查Firebase依赖兼容性
确认pubspec.yaml中Firebase相关依赖(如firebase_core)的版本与本地Flutter SDK版本匹配,避免依赖冲突导致打包异常。
内容的提问来源于stack exchange,提问作者Ahmad
相关产品推荐
相关产品推荐

