Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

FlutterJNI.loadLibrary called more than once (FlutterJNI.prefetchDefaultFontManager, FlutterJNI.init)

Tags:

flutter

after updating Android Studio and flutter (and kotlin) i get this warnings/errors

how to solve or can i ignore without consequential error?

Thank you in anvance.

W/FlutterJNI(23046): FlutterJNI.loadLibrary called more than once
W/FlutterJNI(23046): FlutterJNI.prefetchDefaultFontManager called more than once
W/FlutterJNI(23046): FlutterJNI.init called more than once

Edit 23.03.2022:

it's because "await Firebase.initializeApp();" is called twice like in the documentation mentioned. i have to research more. maybe solution with firebase_options.dart.

enter image description here

Edit 16.04.2022:

Future<void> _firebaseMessagingBackgroundHandler(RemoteMessage message) async {
  await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform,);
}

Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform,);

  // Set the background messaging handler early on, as a named top-level function
  FirebaseMessaging.onBackgroundMessage(_firebaseMessagingBackgroundHandler);

  //String? token =
  await FirebaseMessaging.instance.getAPNSToken();
  await FirebaseMessaging.instance.getToken();
  //print('APNS token: $token');
}
like image 788
AlexF1 Avatar asked Sep 14 '25 00:09

AlexF1


1 Answers

I was facing the same error. This message shows if you call FirebaseMessaging.instance multiple times. For Example:

    final _firebaseMessaging = FirebaseMessaging.instance
    await _firebaseMessaging.requestPermission(
      announcement: true,
      carPlay: true,
      criticalAlert: true,
    );
    await 
FirebaseMessaging.instance.setForegroundNotificationPresentationOptions(
      alert: true,
      badge: true,
      sound: true,
    );

So here, the FirebaseMessaging.instance is called twice. Solved by changing FirebaseMessaging.instance to _firebaseMessaging. Hope this might help.

Note: Do not use FirebaseMessaging.instance in differenta files, or use it by passing the initialized one.

like image 79
Erin Rai Avatar answered Sep 15 '25 14:09

Erin Rai