我有一个带有三个片段的应用程序,每个片段包含不同的帖子。 我创建了动态链接,当用户共享帖子时发送,并且它具有postID,
动态链接:
"https://s5xta.app.goo.gl/?link=http://mywebsite.com/" + postID() + "&apn=com.myapp.firebase.quickstart.database"
其中: L3LLFhi94w-d_zWVDwu 是postID。
我在MainActivity中有以下代码来处理链接。
FirebaseDynamicLinks.getInstance()
.getDynamicLink(getIntent())
.addOnSuccessListener(this, new OnSuccessListener<PendingDynamicLinkData>() {
//Retrive DynamicLink
@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();
}
Intent intent = getIntent();
String action = intent.getAction();
Uri data = intent.getData();
// Handle the deep link. For example, open the linked
// content, or apply promotional credit to the user's
// account.
// ...
// [START_EXCLUDE]
// Display deep link in the UI
if (deepLink != null) {
Snackbar.make(findViewById(android.R.id.content),
"Found deep link!", Snackbar.LENGTH_LONG).show();
//((TextView) findViewById(R.id.link_view_receive))
// .setText(deepLink.toString());
} else {
Log.d(TAG, "getDynamicLink: no link found");
}
// [END_EXCLUDE]
}
})
.addOnFailureListener(this, new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.w(TAG, "getDynamicLink:onFailure", e);
}
});
// [END get_deep_link]
当用户点击链接时,它会打开已安装的应用程序,但会转到第一个片段顶部的最后一个帖子。
我应该怎么做,以便根据深层链接中所述的postID将用户带到正确的帖子?