假设第一个用户向第二个用户发送邀请。
用户发送一些全局链接,第二个用户接收它。
在我的情况下,用户在Android设备中收到dynamic link
而不是global link
。
我想分享目前的uri https://aewp.com/share
private void shareVocabulary() {
Intent intent = new AppInviteInvitation.IntentBuilder("Text")
.setMessage("Message")
.setDeepLink(createDynamicLink().getUri())
.setCustomImage(Uri.parse("https://lh3.googleusercontent.com/info.jpg"))
.setCallToActionText(getString(R.string.install))
.build();
startActivityForResult(intent, SHARE_RESULT_CODE);
}
public DynamicLink createDynamicLink(){
String domain = getString(R.string.domain) + ".app.goo.gl";
return FirebaseDynamicLinks.getInstance().createDynamicLink().
setLink(Uri.parse("https://aewp.com/share")).
setDynamicLinkDomain(domain).
setAndroidParameters(new DynamicLink.AndroidParameters.Builder(getPackageName()).
setFallbackUrl(Uri.parse("https://play.google.com/store/apps/details?id=" + getPackageName())).
build()
).
buildDynamicLink();
}
DeepLinkActivity.class
以下代码每次都返回动态链接,而不是全局链接
FirebaseDynamicLinks.getInstance().getDynamicLink(getIntent())
.addOnSuccessListener(this, new OnSuccessListener<PendingDynamicLinkData>() {
@Override
public void onSuccess(PendingDynamicLinkData data) {
if (data == null) {
Logger.logInfo(getClass(), "getInvitation: no data");
return;
}
// Get the deep link
Uri link = data.getLink();
}
})
.addOnFailureListener(this, new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Logger.logError(getClass(), "getDynamicLink:onFailure", e);
}
});
据我所知,我应该回复此链接“https://aewp.com/share”,而不是短期或大型动态链接
我该如何解决?
答案 0 :(得分:0)
Intent类型之间有一点点区别
要Firebase AppInviteInvitation
我们不使用深层链接,而不是我们应该传递动态链接。
Intent intent = new AppInviteInvitation.IntentBuilder("Send")
.setMessage("Message")
.setDeepLink(R.string.global_link).build())
.setCustomImage(Uri.parse("https://lh3.googleusercontent.com/9.jpg"))
.setCallToActionText("Install))
.build();
startActivityForResult(intent, SHARE_RESULT_CODE);
使用Intent.ACTION_SEND
发送数据时,我们需要为不同平台使用动态链接
Intent intent = new Intent(Intent.ACTION_SEND);
intent.putExtra(Intent.EXTRA_TEXT,"Text here " + createDynamicLink().getUri().toString());
intent.setType("text/plain");
startActivity(Intent.createChooser(intent, "choose one"));