[com.mcdonalds.mobileapp] npe becuase appUrl dont exists on com.google.firebase.dynamiclinks.internal.DynamicLinkData.deepLink
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 14.6k
- Forks
- 3.2k
- Avg merge
- 12d 11h
- Merged PRs (30d)
- 4
Description
Affected app
Name: McDonalds
Package id: com.mcdonalds.mobileapp
Describe the bug
application crashes on start-up due to firebase.
To Reproduce
Steps to reproduce the behavior:
- Go to open app
System
Android Version: 11
Custom ROM: LineageOS 18.1
microG
microG Core version: v0.2.24.214816
microG Self-Check results: All ticked
Additional context
02-05 12:59:30.393 19070 19070 D AndroidRuntime: Shutting down VM
02-05 12:59:30.393 19070 19070 E AndroidRuntime: FATAL EXCEPTION: main
02-05 12:59:30.393 19070 19070 E AndroidRuntime: Process: com.mcdonalds.mobileapp, PID: 19070
02-05 12:59:30.393 19070 19070 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.contains(java.lang.CharSequence)' on a null object reference
02-05 12:59:30.393 19070 19070 E AndroidRuntime: at mcdonalds.dataprovider.google.firebase.invites.FireBaseDynamicLink$2.onSuccess(SourceFile:23)
02-05 12:59:30.393 19070 19070 E AndroidRuntime: at com.google.android.gms.tasks.zzm.run(SourceFile:5)
02-05 12:59:30.393 19070 19070 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:938)
02-05 12:59:30.393 19070 19070 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
02-05 12:59:30.393 19070 19070 E AndroidRuntime: at android.os.Looper.loop(Looper.java:223)
02-05 12:59:30.393 19070 19070 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7664)
02-05 12:59:30.393 19070 19070 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
02-05 12:59:30.393 19070 19070 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
02-05 12:59:30.393 19070 19070 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
@Override // com.google.android.gms.tasks.OnSuccessListener
public void onSuccess(PendingDynamicLinkData pendingDynamicLinkData) {
DynamicLinkData dynamicLinkData;
String str;
.........
PendingDynamicLinkData pendingDynamicLinkData2 = pendingDynamicLinkData;
Uri parse = (pendingDynamicLinkData2 == null || (dynamicLinkData = pendingDynamicLinkData2.dynamicLinkData) == null || (str = dynamicLinkData.deepLink) == null) ? null : Uri.parse(str);
.........
String queryParameter4 = parse.getQueryParameter("appUrl"); <---- RETURN NULL
if (queryParameter4.contains("gmalite-account-otp")) { <----- NPE
.........
}
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the FireBaseDynamicLink$2.onSuccess callback identified in the stack trace and inspect how DynamicLinkData.deepLink and the appUrl query parameter are handled. Reproduce the startup crash on Android 11 with the reported configuration; done means the app no longer crashes when appUrl is absent.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, firebase, java
- Domain
- mobile-dev
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100