From 0f008acb7fb65be781ca7e63e48dd7424aa6d062 Mon Sep 17 00:00:00 2001 From: Jannis Mattheis Date: Sun, 9 Jan 2022 15:17:32 +0100 Subject: [PATCH] Fix crash on share when not loggedin java.lang.RuntimeException: at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2957) at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3032) at android.app.ActivityThread.-wrap11 (Unknown Source) at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1696) at android.os.Handler.dispatchMessage (Handler.java:105) at android.os.Looper.loop (Looper.java:164) at android.app.ActivityThread.main (ActivityThread.java:6944) at java.lang.reflect.Method.invoke (Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run (Zygote.java:327) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1374) Caused by: java.lang.IllegalArgumentException: at okhttp3.HttpUrl$Builder.parse (HttpUrl.java:1333) at okhttp3.HttpUrl.get (HttpUrl.java:916) at retrofit2.Retrofit$Builder.baseUrl (Retrofit.java:458) at com.github.gotify.api.ClientFactory.defaultClient (ClientFactory.java:47) at com.github.gotify.api.ClientFactory.clientToken (ClientFactory.java:28) at com.github.gotify.sharing.ShareActivity.onCreate (ShareActivity.java:82) at android.app.Activity.performCreate (Activity.java:7183) at android.app.Instrumentation.callActivityOnCreate (Instrumentation.java:1220) at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2910) --- .../main/java/com/github/gotify/sharing/ShareActivity.java | 7 +++++++ app/src/main/res/values/strings.xml | 1 + 2 files changed, 8 insertions(+) diff --git a/app/src/main/java/com/github/gotify/sharing/ShareActivity.java b/app/src/main/java/com/github/gotify/sharing/ShareActivity.java index dcd2994..14d9e7a 100644 --- a/app/src/main/java/com/github/gotify/sharing/ShareActivity.java +++ b/app/src/main/java/com/github/gotify/sharing/ShareActivity.java @@ -78,6 +78,13 @@ public class ShareActivity extends AppCompatActivity { } } + if (!settings.tokenExists()) { + Toast.makeText(getApplicationContext(), R.string.not_loggedin_share, Toast.LENGTH_SHORT) + .show(); + finish(); + return; + } + ApiClient client = ClientFactory.clientToken(settings.url(), settings.sslSettings(), settings.token()); appsHolder = new ApplicationHolder(this, client); diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 4fea115..cfa850c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -83,4 +83,5 @@ Priority There are no applications available on the server to push a message to. Content copied to clipboard + Cannot share to Gotify, because you aren\'t logged in.