RightMesh / meshIM

An on- or off-line messaging app powered by RightMesh!
GNU General Public License v3.0
17 stars 8 forks source link

Can't start RightMesh service again after turning it off via the wallet interface #32

Open ConnorHeidema opened 6 years ago

ConnorHeidema commented 6 years ago

When I go to the wallet page and turn off the RightMesh service, if I leave to the profiel page and try to go back to the RightMesh wallet page it crashes and I get kicked out of the application. If I go back into the app the service doesn't restart. If I restart the phone the service doesn't restart. If I delete internal files pertaining to the app it causes the RightMesh wallet button to stop working (the app doesn't crash anymore however)

ConnorHeidema commented 6 years ago

02-20 15:07:23.608 12704-12704/io.left.meshim E/AndroidRuntime: FATAL EXCEPTION: main Process: io.left.meshim, PID: 12704 java.lang.IllegalStateException: io.left.rightmesh.mesh.l must be set at android.os.Parcel.readException(Parcel.java:1628) at android.os.Parcel.readException(Parcel.java:1573) at io.left.meshim.services.IMeshIMService$Stub$Proxy.showRightMeshSettings(IMeshIMService.java:252) at io.left.meshim.activities.MainActivity.lambda$setupSettingTab$4$MainActivity(MainActivity.java:208) at io.left.meshim.activities.MainActivity$$Lambda$4.onClick(Unknown Source) at android.view.View.performClick(View.java:5204) at android.view.View$PerformClick.run(View.java:21153) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

ConnorHeidema commented 6 years ago

^stacktrace

compscidr commented 6 years ago

Might be good for someone to compile a version of meshim with dexguard disabled on the lib to reproduce and do a stacktrace - will make it easier to see what class is saying must be set.

FrazerSeymour commented 6 years ago

~I think when we tracked it down at @ConnorHeidema's desk we just don't null check the service in the onClick event in the app where we call meshManager.showSettingsOrWhatever(). Should be a quick fix.~ Wait, derp, it propagates into the library, thus the dexgaurded class. :upside_down_face: