project-avocado
project-avocado copied to clipboard
App crash related to flutter_contacts
App is crashed when using flutter_contacts, as reported in flirebase crashalytics.
Fatal Exception: java.lang.SecurityException: Permission Denial: opening provider
com.android.providers.contacts.ContactsProvider2 from ProcessRecord{58d4b6 3950:in.ac.nitrkl.scp.scp/u0a302} (pid=3950, uid=10302) requires android.permission.READ_CONTACTS or android.permission.WRITE_CONTACTS
at android.os.Parcel.createExceptionOrNull(Parcel.java:2385)
at android.os.Parcel.createException(Parcel.java:2369)
at android.os.Parcel.readException(Parcel.java:2352)
at android.os.Parcel.readException(Parcel.java:2294)
at android.app.IActivityManager$Stub$Proxy.getContentProvider(IActivityManager.java:6680)
at android.app.ActivityThread.acquireProvider(ActivityThread.java:7718)
at android.app.ContextImpl$ApplicationContentResolver.acquireProvider(ContextImpl.java:3071)
at android.content.ContentResolver.acquireProvider(ContentResolver.java:2475)
at android.content.ContentResolver.acquireContentProviderClient(ContentResolver.java:2541)
at android.content.ContentResolver.applyBatch(ContentResolver.java:2201)
at co.quis.flutter_contacts.FlutterContacts$Companion.insert(FlutterContacts.java:124)
at co.quis.flutter_contacts.FlutterContactsPlugin$onMethodCall$3.invokeSuspend(FlutterContactsPlugin.java:38)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(BaseContinuationImpl.java:9)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.java:117)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.java)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.java:14)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.java:28)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.java)
- Device: [e.g. Nokia 5.4]
- OS: [e.g. Android 11]
- Version [e.g. 4.3.0] Fix Add the permissions to the manifest file
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>