background_locator
background_locator copied to clipboard
FATAL EXCEPTION: java.lang.UnsatisfiedLinkError: No implementation found for io.flutter.view.FlutterCallbackInformation io.flutter.embedding.engine.FlutterJNI.nativeLookupCallbackInformation
E/AndroidRuntime(18193): FATAL EXCEPTION: main E/AndroidRuntime(18193): Process: com.courieralliance.driverca.dev, PID: 18193 E/AndroidRuntime(18193): java.lang.UnsatisfiedLinkError: No implementation found for io.flutter.view.FlutterCallbackInformation io.flutter.embedding.engine.FlutterJNI.nativeLookupCallbackInformation(long) (tried Java_io_flutter_embedding_engine_FlutterJNI_nativeLookupCallbackInformation and Java_io_flutter_embedding_engine_FlutterJNI_nativeLookupCallbackInformation__J) E/AndroidRuntime(18193): at io.flutter.embedding.engine.FlutterJNI.nativeLookupCallbackInformation(Native Method) E/AndroidRuntime(18193): at io.flutter.view.FlutterCallbackInformation.lookupCallbackInformation(:30) E/AndroidRuntime(18193): at rekab.app.background_locator.c.a(:21) E/AndroidRuntime(18193): at rekab.app.background_locator.IsolateHolderService.onCreate(:115) E/AndroidRuntime(18193): at android.app.ActivityThread.handleCreateService(ActivityThread.java:3953) E/AndroidRuntime(18193): at android.app.ActivityThread.access$1500(ActivityThread.java:219) E/AndroidRuntime(18193): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1875) E/AndroidRuntime(18193): at android.os.Handler.dispatchMessage(Handler.java:107) E/AndroidRuntime(18193): at android.os.Looper.loop(Looper.java:214) E/AndroidRuntime(18193): at android.app.ActivityThread.main(ActivityThread.java:7356) E/AndroidRuntime(18193): at java.lang.reflect.Method.invoke(Native Method) E/AndroidRuntime(18193): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) E/AndroidRuntime(18193): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
I have the same issue on several devices android 10, 11
Dont know steps to reproduce from users. But I'm able to catch it every time I stop installed app through Android studio. Seems like Service is trying to restart after app was stopped.
While using my app could not reproduce this error, But i can see crash logs from users in Firebase
Some info from Firebase:
Fatal Exception: java.lang.RuntimeException
Unable to create service rekab.app.background_locator.IsolateHolderService: java.lang.NullPointerException: Attempt to read from field 'java.lang.String io.flutter.view.FlutterCallbackInformation.callbackLibraryPath' on a null object reference
android.app.ActivityThread.handleCreateService
I've covered whole body of function internal fun IsolateHolderService.startLocatorService(context: Context)
into try/catch and it helped, but it'is complete fix (((((
Here are some additional logs of the error. This issue is causing daily crashes.
Fatal Exception: java.lang.UnsatisfiedLinkError: No implementation found for io.flutter.view.FlutterCallbackInformation io.flutter.embedding.engine.FlutterJNI.nativeLookupCallbackInformation(long) (tried Java_io_flutter_embedding_engine_FlutterJNI_nativeLookupCallbackInformation and Java_io_flutter_embedding_engine_FlutterJNI_nativeLookupCallbackInformation__J)
at io.flutter.embedding.engine.FlutterJNI.nativeLookupCallbackInformation(FlutterJNI.java)
at io.flutter.view.FlutterCallbackInformation.lookupCallbackInformation(FlutterCallbackInformation.java)
at rekab.app.background_locator.IsolateHolderExtensionKt.startLocatorService(IsolateHolderExtensionKt.java:52)
at rekab.app.background_locator.IsolateHolderService.onCreate(IsolateHolderService.java:3)
at android.app.ActivityThread.handleCreateService(ActivityThread.java:4607)
at android.app.ActivityThread.access$1600(ActivityThread.java:301)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2167)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:246)
at android.app.ActivityThread.main(ActivityThread.java:8512)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1139)
@mehdok This issue occurs when you change the location permission status always to deny.
No implementation found for io.flutter.view.FlutterCallbackInformation io.flutter.embedding.engine.FlutterJNI.nativeLookupCallbackInformation(long) (tried Java_io_flutter_embedding_engine_FlutterJNI_nativeLookupCallbackInformation and Java_io_flutter_embedding_engine_FlutterJNI_nativeLookupCallbackInformation__J) 2021-08-25 14:52:09.165 14810-14810/com.courieralliance.driverca.dev E/AndroidRuntime: FATAL EXCEPTION: main Process: com.courieralliance.driverca.dev, PID: 14810 java.lang.UnsatisfiedLinkError: No implementation found for io.flutter.view.FlutterCallbackInformation io.flutter.embedding.engine.FlutterJNI.nativeLookupCallbackInformation(long) (tried Java_io_flutter_embedding_engine_FlutterJNI_nativeLookupCallbackInformation and Java_io_flutter_embedding_engine_FlutterJNI_nativeLookupCallbackInformation__J) at io.flutter.embedding.engine.FlutterJNI.nativeLookupCallbackInformation(Native Method) at io.flutter.view.FlutterCallbackInformation.lookupCallbackInformation(:30) at rekab.app.background_locator.c.a(:21) at rekab.app.background_locator.IsolateHolderService.onCreate(:115) at android.app.ActivityThread.handleCreateService(ActivityThread.java:3953) at android.app.ActivityThread.access$1500(ActivityThread.java:219) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1875) at android.os.Handler.dispatchMessage(Handler.java:107) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7356) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930) 2021-08-25 14:52:11.066 14863-14863/com.courieralliance.driverca.dev E/ce.driverca.de: No implementation found for io.flutter.view.FlutterCallbackInformation io.flutter.embedding.engine.FlutterJNI.nativeLookupCallbackInformation(long) (tried Java_io_flutter_embedding_engine_FlutterJNI_nativeLookupCallbackInformation and Java_io_flutter_embedding_engine_FlutterJNI_nativeLookupCallbackInformation__J) 2021-08-25 14:52:11.072 14863-14863/com.courieralliance.driverca.dev E/AndroidRuntime: FATAL EXCEPTION: main Process: com.courieralliance.driverca.dev, PID: 14863 java.lang.UnsatisfiedLinkError: No implementation found for io.flutter.view.FlutterCallbackInformation io.flutter.embedding.engine.FlutterJNI.nativeLookupCallbackInformation(long) (tried Java_io_flutter_embedding_engine_FlutterJNI_nativeLookupCallbackInformation and Java_io_flutter_embedding_engine_FlutterJNI_nativeLookupCallbackInformation__J) at io.flutter.embedding.engine.FlutterJNI.nativeLookupCallbackInformation(Native Method) at io.flutter.view.FlutterCallbackInformation.lookupCallbackInformation(:30) at rekab.app.background_locator.c.a(:21) at rekab.app.background_locator.IsolateHolderService.onCreate(:115) at android.app.ActivityThread.handleCreateService(ActivityThread.java:3953) at android.app.ActivityThread.access$1500(ActivityThread.java:219) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1875) at android.os.Handler.dispatchMessage(Handler.java:107) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7356) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
Strange enough, I was able to replicate this when using the camera plugin image_picker to take a picture. When the app resumed after the picture was taken, this error occurred. It might suggest some faulty behaviour of background_locator when an app resumes after an image is taken.
Hi guys;
Please make sure to run WidgetsFlutterBinding.ensureInitialized();
before running the service;
Strange enough, I was able to replicate this when using the camera plugin image_picker to take a picture. When the app resumed after the picture was taken, this error occurred. It might suggest some faulty behaviour of background_locator when an app resumes after an image is taken.
@Wian-TMC I have the same problem. Did you find a solution?
@marcoheine Not yet unfortunately
I've got the same issue happening on Android 11 and 12 devices. Fortunately, "only" on 5