Failed to load providerinstaller module: No acceptable module found. Local version is 0 and remote version is 0 error flutter
Solution 1
Add the following permission to android/app/src/main/AndroidManifest.xml
,
before <application>
starts:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Solution 2
I had the same error. I looked through my code and found that I had given the wrong collection name while I was calling firebasefirestore. Please do check that you are providing the right reference names to collections and docs.
Solution 3
I see this error when wireless is active but the connection to Firestore fails. For example, when debugging I connect to the local emulators, if I forget to start the emulator I get this message, but the app still works from cache.
Shreyansh Sharma
Updated on June 07, 2022Comments
-
Shreyansh Sharma about 2 years
I am getting this warning in my run console. Baically, my chatRoomTile is not been showed on the screen. It just shows blank screen, even after i have had chat with 10 persons.
It is just showing the main screen, and the red container for 2 seconds, as in conditional statement.
This is the output in run -
Performing hot restart... Syncing files to device sdk gphone x86... Restarted application in 1,522ms. W/eyansh.whatsap( 6057): Accessing hidden method Ldalvik/system/CloseGuard;->close()V (greylist,core-platform-api, linking, allowed) W/DynamiteModule( 6057): Local module descriptor class for providerinstaller not found. I/DynamiteModule( 6057): Considering local module providerinstaller:0 and remote module providerinstaller:0 W/ProviderInstaller( 6057): Failed to load providerinstaller module: No acceptable module found. Local version is 0 and remote version is 0. Lost connection to device.
Here is my code -
import 'package:flutter/material.dart'; import 'package:whatsapp/helper/authenticate.dart'; import 'package:whatsapp/helper/constants.dart'; import 'package:whatsapp/helper/helperFunctions.dart'; import 'package:whatsapp/screens/search.dart'; import 'package:whatsapp/services/auth.dart'; import 'package:whatsapp/services/database.dart'; class ChatRoom extends StatefulWidget { @override _ChatRoomState createState() => _ChatRoomState(); } class _ChatRoomState extends State<ChatRoom> { AuthMethods authMethods = new AuthMethods(); DatabaseMethods databaseMethods = new DatabaseMethods(); Stream chatRoomStream; Widget chatRoomList(){ return StreamBuilder( stream: chatRoomStream, builder: (context, snapshot) { return snapshot.hasData ? ListView.builder( itemCount: snapshot.data.documents.length, itemBuilder: (context, index) { return ChatRoomTile( snapshot.data.documents[index]["chatRoomId"], ); }) : Container(color: Colors.red,); }, ); } @override void initState() { getUserInfo(); super.initState(); } getUserInfo() async{ Constants.myName = await HelperFunctions.getUserNameSharedPreference(); databaseMethods.getChatRooms(Constants.myName).then((val){ setState(() { chatRoomStream = val; }); }); setState(() { }); } @override Widget build(BuildContext context) { return SafeArea( child: Scaffold( appBar: AppBar( backgroundColor: Color(0xff161517), title: Text( 'WhatsApp', style: TextStyle( color: Colors.white54, fontSize: 20.0, ), ), actions: [ Container( height: 25.0, width: 25.0, child: FloatingActionButton( heroTag: "btn1", backgroundColor: Color(0xff161517), child: Icon(Icons.search, color: Colors.white54,), onPressed: (){ }, ), ), GestureDetector( onTap: (){ authMethods.signOut(); Navigator.pushReplacement(context, MaterialPageRoute(builder: (context) => Authenticate())); }, child: Container( padding: EdgeInsets.symmetric(horizontal: 15.0), child: Icon( Icons.exit_to_app, color: Colors.white54, ), ), ), GestureDetector( onTap: (){ }, child: Container( padding: EdgeInsets.symmetric(horizontal: 1.0), child: Icon( Icons.more_vert, color: Colors.white54, ), ), ), ], ), body: chatRoomList(), floatingActionButton: FloatingActionButton( heroTag: "btn2", backgroundColor: Colors.green[700], onPressed: (){ Navigator.push(context, MaterialPageRoute(builder: (context) => SearchScreen())); }, child: Icon( Icons.message, color: Colors.white, ), ), ), ); } } class ChatRoomTile extends StatelessWidget { final String userName; ChatRoomTile(this.userName); @override Widget build(BuildContext context) { return Container( child: Row( children: [ Container( decoration: BoxDecoration( shape: BoxShape.circle, image: DecorationImage( image: AssetImage("assets/images/DefaultPhoto.png"), fit: BoxFit.fill, ), borderRadius: BorderRadius.circular(40.0), ), ), SizedBox(width: 8.0,), Text( userName, style: TextStyle( color: Colors.white, ), ), ], ), ); } }
If anyone wants details for any widget, you can ask me.