babybuddy / babybuddy-for-android

Android client for the Baby Buddy webapp
MIT License
16 stars 6 forks source link

Grab App Token "DNR"s #27

Closed MrApplejuice closed 1 year ago

MrApplejuice commented 1 year ago

The app forces a synchronous check on app-token availability which goes against Android design guidelines in the first place, but was done to be able to release the app more quickly.

This used to only cause "DNR"s which do not look good but are not critical per-se. However, when the network connection becomes slow, this also can cause hard crashes when Android terminates the app due to timeouts.

This should be fixed in the next release as well!

MrApplejuice commented 1 year ago

Causes actual crashes. This needs to be fixed soon!

      at java.lang.Object.wait (Native method)
      at java.lang.Object.wait (Object.java:442)
      at java.lang.Thread.join (Thread.java:1432)
      at java.lang.Thread.join (Thread.java:1513)
      at eu.pkgsoftware.babybuddywidgets.networking.GrabAppToken.grabToken (GrabAppToken.java:90)
      at eu.pkgsoftware.babybuddywidgets.LoginFragment.performLogin (LoginFragment.java:257)
      at eu.pkgsoftware.babybuddywidgets.LoginFragment.lambda$uiStartLogin$5$eu-pkgsoftware-babybuddywidgets-LoginFragment (LoginFragment.java:179)
      at eu.pkgsoftware.babybuddywidgets.LoginFragment$$ExternalSyntheticLambda4.onClick (D8$$SyntheticClass)
      at com.android.internal.app.AlertController$ButtonHandler.handleMessage (AlertController.java:235)
      at android.os.Handler.dispatchMessage (Handler.java:110)
      at android.os.Looper.loop (Looper.java:219)
      at android.app.ActivityThread.main (ActivityThread.java:8668)  
      at java.lang.reflect.Method.invoke (Native method)
      at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:513)
      at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1109)
MrApplejuice commented 1 year ago

Code is async now. It should work!