Reputation: 604
I am trying to get query params from this short dynamic link : https://easyloans.page.link/test
Long Dynamic Link : https://easyloans.page.link/?link=https://www.availfinance.in&apn=com.avail.easyloans.android&utm_campaign=Test_Campaign_Name&utm_medium=Test_Medium&utm_source=Test_Source
Manifest :
<activity android:name=".Activites.DynamicLink">
<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="easyloans.page.link"
android:scheme="http"
android:pathPrefix="/"
android:pathPattern=".*"/>
<data
android:host="easyloans.page.link"
android:scheme="https"
android:pathPrefix="/"
android:pathPattern=".*"/>
</intent-filter>
</activity>
In Android Activity:
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.d(TAG, "source : " + pendingDynamicLinkData.getLink().getQueryParameter("utm_source"));
}
Log.d(TAG, "link " + deepLink);
}
})
.addOnFailureListener(this, new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.d(TAG, "getDynamicLink:onFailure", e);
}
});
Output which i am receiving is : link https://www.availfinance.in and source : null (I am expecting Test_Source in this)
Upvotes: 3
Views: 2482
Reputation: 19960
The getLink()
method returns the link
parameter you set on the long FDL, which in your example link was just what was returned: link=https://www.availfinance.in.
The UTM parameters are passed automatically to Google Analytics for Firebase.
pendingDynamicLinkData.getLink().getQueryParameter("foo")
will return a value only if it is on the URL contained within the link
parameter, e.g. if your link was link=https://www.availfinance.in/?foo=bar (with appropriate URL encoding).
Upvotes: 4