background_locator icon indicating copy to clipboard operation
background_locator copied to clipboard

FATAL EXCEPTION: java.lang.UnsatisfiedLinkError: No implementation found for io.flutter.view.FlutterCallbackInformation io.flutter.embedding.engine.FlutterJNI.nativeLookupCallbackInformation

Open saravananmnm opened this issue 3 years ago • 10 comments

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)

saravananmnm avatar Jul 22 '21 11:07 saravananmnm

I have the same issue on several devices android 10, 11

Trteich avatar Jul 27 '21 14:07 Trteich

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

Trteich avatar Jul 29 '21 16:07 Trteich

I've covered whole body of function internal fun IsolateHolderService.startLocatorService(context: Context) into try/catch and it helped, but it'is complete fix (((((

Trteich avatar Jul 29 '21 16:07 Trteich

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)

Wian-TMC avatar Aug 11 '21 11:08 Wian-TMC

@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)

saravananmnm avatar Aug 25 '21 09:08 saravananmnm

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 avatar Sep 02 '21 10:09 Wian-TMC

Hi guys;

Please make sure to run WidgetsFlutterBinding.ensureInitialized(); before running the service;

mehdok avatar Sep 11 '21 13:09 mehdok

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 avatar Oct 21 '21 14:10 marcoheine

@marcoheine Not yet unfortunately

Wian-TMC avatar Oct 22 '21 03:10 Wian-TMC

I've got the same issue happening on Android 11 and 12 devices. Fortunately, "only" on 5

eveetc avatar Feb 02 '22 18:02 eveetc