Ad
I Cannot Retrieve Dynamic Link From Firebase Through My Application As Pendingdynamiclinkdata Is Null
I am trying to retrieve the deeplink URL from firebase but always shows me null.
i have added below code in manifest and i have also tried with the short dynamic URL i.e. https://example555.page.link/y6N7 but still its show me null.
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data
android:host="example555.page.link"
android:scheme="https"
/>
</intent-filter>
Here is my code of retrieving dynamic link :
FirebaseDynamicLinks.getInstance()
.getDynamicLink(getIntent())
.addOnSuccessListener(this, new
OnSuccessListener<PendingDynamicLinkData>() {
@Override
public void onSuccess(PendingDynamicLinkData
pendingDynamicLinkData) {
Uri deepLink = null;
if (pendingDynamicLinkData != null) {
deepLink = pendingDynamicLinkData.getLink();
}
}
})
.addOnFailureListener(this, new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.w(TAG, "getDynamicLink:onFailure", e);
}
});
Ad
Answer
ok so after banging my head for so many hours i found a solution which helped me in getting the solution :
so ill start from beginning : 1. create a dynamic link. 2. add following code to your manifest
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data
android:host="example555.page.link"
android:scheme="https"/>
</intent-filter>
add this code in you Main activity :
FirebaseAnalytics mFirebaseAnalytics; mFirebaseAnalytics=FirebaseAnalytics.getInstance(this); FirebaseDynamicLinks.getInstance() .getDynamicLink(getIntent()) .addOnSuccessListener(this, new OnSuccessListener<PendingDynamicLinkData>() { @Override public void onSuccess(PendingDynamicLinkData pendingDynamicLinkData) { // Get deep link from result (may be null if no link is found) Uri deepLink = null; if (pendingDynamicLinkData != null) { deepLink = pendingDynamicLinkData.getLink(); Log.w("deepLink", "" + deepLink); String cn=String.valueOf(deepLink.getQueryParameters("utm_campaign")); String cm = String.valueOf(deepLink. getQueryParameters("utm_medium")); String cs = String.valueOf(deepLink.getQueryParameters("utm_source")); if (cs != null && cn != null) { Bundle params = new Bundle(); params.putString(FirebaseAnalytics.Param.CAMPAIGN, cn); params.putString(FirebaseAnalytics.Param.MEDIUM, cm); params.putString(FirebaseAnalytics.Param.SOURCE, cs); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.CAMPAIGN_DETAILS, params); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.APP_OPEN, params); } } } }) .addOnFailureListener(this, new OnFailureListener() { @Override public void onFailure(@NonNull Exception e) { Log.w("TAG", "getDynamicLink:onFailure", e); } });
now its time to test your application: google search your url i.e example555.page.link after that it will redirect you to application and you fill and your out put. if this works than thankyou.
Ad
source: stackoverflow.com
Related Questions
- → How to update data attribute on Ajax complete
- → October CMS - Radio Button Ajax Click Twice in a Row Causes Content to disappear
- → Octobercms Component Unique id (Twig & Javascript)
- → Passing a JS var from AJAX response to Twig
- → Laravel {!! Form::open() !!} doesn't work within AngularJS
- → DropzoneJS & Laravel - Output form validation errors
- → Import statement and Babel
- → Uncaught TypeError: Cannot read property '__SECRET_DOM_DO_NOT_USE_OR_YOU_WILL_BE_FIRED' of undefined
- → React-router: Passing props to children
- → ListView.DataSource looping data for React Native
- → Can't test submit handler in React component
- → React + Flux - How to avoid global variable
- → Webpack, React & Babel, not rendering DOM
Ad