-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Description
There is a crash in QueueActivityBase.java:184
regarding the targetUrl. If its null in can't be parsed. It only happens on Android 13.
java.lang.NullPointerException: uriString
android.net.Uri$StringUri.<init> (Uri.java:504)
android.net.Uri$StringUri.<init> (Unknown source)
android.net.Uri.parse (Uri.java:466)
com.queue_it.androidsdk.QueueActivityBase.readActivityExtras (QueueActivityBase.java:184)
com.queue_it.androidsdk.QueueActivityBase.initialize (QueueActivityBase.java:122)
com.queue_it.androidsdk.QueueActivity.onCreate (QueueActivity.java:12)
android.app.Activity.performCreate (Activity.java:8305)
android.app.Activity.performCreate (Activity.java:8284)
android.app.Instrumentation.callActivityOnCreate (Instrumentation.java:1417)
android.app.ActivityThread.performLaunchActivity (ActivityThread.java:3626)
android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3782)
android.app.servertransaction.LaunchActivityItem.execute (LaunchActivityItem.java:101)
android.app.servertransaction.TransactionExecutor.executeCallbacks (TransactionExecutor.java:135)
android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:95)
android.app.ActivityThread$H.handleMessage (ActivityThread.java:2307)
android.os.Handler.dispatchMessage (Handler.java:106)
android.os.Looper.loopOnce (Looper.java:201)
android.os.Looper.loop (Looper.java:288)
android.app.ActivityThread.main (ActivityThread.java:7872)
java.lang.reflect.Method.invoke (Method.java:-2)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:548)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:936)
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.festspielhausbadenbaden.app/com.queue_it.androidsdk.QueueActivity}: java.lang.NullPointerException: uriString
android.app.ActivityThread.performLaunchActivity (ActivityThread.java:3645)
android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3782)
android.app.servertransaction.LaunchActivityItem.execute (LaunchActivityItem.java:101)
android.app.servertransaction.TransactionExecutor.executeCallbacks (TransactionExecutor.java:135)
android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:95)
android.app.ActivityThread$H.handleMessage (ActivityThread.java:2307)
android.os.Handler.dispatchMessage (Handler.java:106)
android.os.Looper.loopOnce (Looper.java:201)
android.os.Looper.loop (Looper.java:288)
android.app.ActivityThread.main (ActivityThread.java:7872)
java.lang.reflect.Method.invoke (Method.java:-2)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:548)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:936)
Guarding the uriOverrider.setTarget(Uri.parse(targetUrl))
methods with if != null or try catch would probably help.
private void readActivityExtras(Bundle savedInstanceState) {
if (savedInstanceState == null) {
Bundle extras = _context.getIntent().getExtras();
if (extras == null) {
queueUrl = null;
targetUrl = null;
webViewUserAgent = null;
} else {
queueUrl = extras.getString("queueUrl");
targetUrl = extras.getString("targetUrl");
webViewUserAgent = extras.getString("webViewUserAgent");
uriOverrider.setUserId(extras.getString("userId"));
options = (QueueItEngineOptions)extras.getParcelable("options");
}
} else {
queueUrl = (String) savedInstanceState.getSerializable("queueUrl");
targetUrl = (String) savedInstanceState.getSerializable("targetUrl");
webViewUserAgent = (String) savedInstanceState.getSerializable("webViewUserAgent");
uriOverrider.setUserId((String) savedInstanceState.getSerializable("userId"));
}
uriOverrider.setTarget(Uri.parse(targetUrl));
uriOverrider.setQueue(Uri.parse(queueUrl));
}
Metadata
Metadata
Assignees
Labels
No labels