Open yasersojoodi opened 8 months ago
You should make sure that no rendered component executes audioQuery before getting users permission. Ex.
bool permissionGranted = false;
@override
void initState() {
super.initState();
_requestPermission();
}
void _requestPermission() async {
PermissionStatus status = await Permission.audio.request();
if (status.isPermanentlyDenied) {
await Permission.audio.request();
}
if (status.isGranted) {
_createPlaylist();
setState(() {
permissionGranted = true;
});
}
}
When permissionGranted = true you can initialise the audioQuerys
I/FA-Ads ( 8545): Application backgrounded at: timestamp_millis: 1698398144366 D/AndroidRuntime( 8545): Shutting down VM E/AndroidRuntime( 8545): FATAL EXCEPTION: main E/AndroidRuntime( 8545): Process: musicetapp.ir.musicet, PID: 8545 E/AndroidRuntime( 8545): java.lang.RuntimeException: Failure delivering result ResultInfo{who=@android:requestPermissions:, request=88560, result=-1, data=Intent { act=android.content.pm.action.REQUEST_PERMISSIONS (has extras) }} to activity {musicetapp.ir.musicet/musicetapp.ir.musicet.MainActivity}: com.lucasjosino.on_audio_query.PluginProvider$UninitializedPluginProviderException: Tried to get one of the methods but the 'PluginProvider' has not initialized