Flutter集成Firebase添加数据时遇ProviderInstaller模块错误求助
Flutter集成Firebase添加数据时ProviderInstaller加载失败问题
问题详情
完成Flutter与Firebase集成后,向数据库添加数据时触发以下错误:
找不到com.google.android.gms.providerinstaller.dynamite的本地模块描述符类,加载ProviderInstaller模块失败,本地和远程版本均为0。
已安装Google Play Services,且在主配置文件和用户配置文件的AndroidManifest中添加了相关配置,项目代码如下:
main.dart
[main.dart代码]
pubspec.yaml
[pubspec.yaml代码]
项目级build.gradle
[项目级build.gradle代码]
应用级build.gradle
[应用级build.gradle代码]
解决方案
- 强制指定Google Play Services版本:在应用级build.gradle中,给ProviderInstaller相关库指定明确版本,避免版本匹配问题,添加如下依赖:
implementation 'com.google.android.gms:play-services-base:18.2.0' implementation 'com.google.android.gms:play-services-basement:18.1.0' - 更新Firebase依赖版本:检查pubspec.yaml中的Firebase相关包(如firebase_core、firebase_database),切换到最新稳定版,执行
flutter pub upgrade完成依赖更新。 - 清理重建项目:执行以下命令清理缓存并重新构建,消除旧缓存引发的版本冲突:
flutter clean flutter pub get cd android && ./gradlew clean && ./gradlew build - 检查设备Google Play Services状态:进入设备「设置-应用-Google Play服务」,确认其为最新版本;若版本过旧则手动更新,同时确保设备Google服务框架正常运行。
- 校验AndroidManifest配置:确保AndroidManifest中添加了ProviderInstaller的专属配置,且无冲突的权限或组件声明:
<provider android:name="com.google.android.gms.providerinstaller.ProviderInstallerProvider" android:authorities="${applicationId}.com.google.android.gms.providerinstaller.ProviderInstallerProvider" android:exported="false" android:initOrder="100" />
内容的提问来源于stack exchange,提问作者Kerim Berkay
相关产品推荐
相关产品推荐

