Skip to content

Tasker breaks gson in android making apps to crash #47

@sn4k3

Description

@sn4k3

I took days and wipes between debugs to find the cause.
In end I settle in tasker being the cause for it.

The problem is after "unknown" setting the gson start to stack overflow in AndroidRuntime.
I asked for help: google/gson#2870

07-04 01:41:58.517 15200 16275 E AndroidRuntime: java.lang.StackOverflowError: stack size 1037KB
07-04 01:41:58.517 15200 16275 E AndroidRuntime: 	at java.lang.reflect.Field.get(Native Method)
07-04 01:41:58.517 15200 16275 E AndroidRuntime: 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.writeField(ReflectiveTypeAdapterFactory.java:2)
07-04 01:41:58.517 15200 16275 E AndroidRuntime: 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.write(ReflectiveTypeAdapterFactory.java:8)
07-04 01:41:58.517 15200 16275 E AndroidRuntime: 	at com.google.gson.Gson$FutureTypeAdapter.write(Gson.java:4)
07-04 01:41:58.517 15200 16275 E AndroidRuntime: 	at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.write(TypeAdapterRuntimeTypeWrapper.java:17)
07-04 01:41:58.517 15200 16275 E AndroidRuntime: 	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.write(ReflectiveTypeAdapterFactory.java:4)
...
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at com.google.gson.Gson.toJson(Gson.java:22)
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at com.google.gson.Gson.toJson(Gson.java:11)
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at com.google.gson.Gson.toJson(Gson.java:5)
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at com.google.gson.Gson.toJson(Gson.java:3)
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at sibs.connector.helpers.JsonParser.toJson(JsonParser.java:6)
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at sibs.connector.core.ConnectorHandler._callback(ConnectorHandler.java:39)
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at sibs.connector.core.ConnectorHandler.callback(ConnectorHandler.java:1)
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at sibs.connector.core.ConnectorHandler.nativeProcessService(Native Method)
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at sibs.connector.core.ConnectorHandler.processService(ConnectorHandler.java:1)
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at sibs.intra.sw.mbwaysdk.implementation.ConnectorHandlerMBWay.processService(ConnectorHandlerMBWay.java:1)
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at o.d.a(MBWayPrivateServiceImpl.java:24)
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at l.u1.run(MBWayRegisterServiceImpl.java:22)
07-04 01:37:45.049  9361 10653 E AndroidRuntime:        at java.lang.Thread.run(Thread.java:1042)

The affected apps in my case were MBWay and CGD (Banking apps)

  • MBWay will infinitely loop
  • CGD will crash once click MBWay

After many wipes and step by step I was able to reproduce the problem and associate with tasker.

Image

Grating "Access to Hidden APIs" trigger the problem.
I found latter that if I revoke that the problem is solved, grant again and problem is back.

Tried to uninstall tasker with that granted and problem remains.
Strangely granting that access breaks something in android and causes the overflow.
Before I know "ungrant is the way to fix" I had to format android and retry every app.
I left shizuku uninstalled as I also suspect from it, but in the end was all the tasker.

Now I have everything working, including shizuku and problematic apps works. (As long tasker don't touch hidden apis)

My few tasks are simple, just a sleep task, auto power save mode, auto toggle mobile network, airplane, check and send sms.

Example of problem (Infinite loop where stackoverflow happens):
https://github.com/user-attachments/assets/819e38ab-9608-48a4-b9e5-343fe828ea24

My phone:
Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions