This article will discuss the common issues faced during deep linking and clicking on push notifications.
Deeplink Redirection isn't working
This could happen because you haven't configured an Activity in your manifest to handle the given deep link. Verify if the deep link is properly and is redirecting to the expected screen using the below adb command.
adb shell am start -W -a android.intent.action.VIEW -d <URI> <PACKAGE>
If the navigation is not working as expected with the above command there is something wrong in the way the deep link is configured. Please refer to this official documentation to configure deep links in your application.
Click on the push notification CTA button isn't working
This can happen when you have a custom push listener apart from the default MoEngage handler. You would most likely be handling the default click on the push notification but did not implement the handling for clicking on the CTA button. Please add the CTA button click handling to ensure the behavior meets expectations.
The rich landing page doesn't render the webpage / URL
As per Android official documentation, - WebView objects allow you to display web content as part of your activity layout but lack some of the features of fully-developed browsers.
Webview is used to load rich landing pages within the app, and since webview doesn't support all the features that a normal browser supports, there is a chance that your website isn't loading in the rich landing redirection.
To handle this case, kindly either make your web page compatible with Webview or redirect the user to the device browser using a custom push listener code.
Click call backs aren't received on react-native, Flutter, Cordava
This can happen in hybrid frameworks implementation, and you have missed adding the initialization code.
MoEInitializer.initializeDefaultInstance(applicationContext, moEngage)
Kindly ensure the above line is in your code per the initialization instructions.
Clicks on deep link open the app in Android 11 and the browser in Android 12
Starting in Android 12 (API level 31), a generic web intent resolves to an activity in your application only if your application is approved for the specific domain in that web intent. If your application isn't approved for the domain, the web intent resolves to the device's default browser. Please refer to the official Google documentation to know more on how to approve/verify your application for your domain.