Sat*_*ale 6 android deep-linking firebase firebase-dynamic-links
Dynamic Link我在 Firebase 控制台中创建了一个。我在应用程序中有“引用”选项,它创建一个动态链接,并且该链接通过某些媒体共享。根据 Firebase 文档,如果尚未安装应用程序,它将打开 Play 商店并允许用户下载该应用程序。但是,一旦下载了应用程序(根据文档),它应该显示Continue首次打开应用程序的选项,以便预期的动态链接流将起作用。但我还没有从 Play 商店收到这样的“首次安装”选项,它显示了Open破坏动态链接并从头开始打开应用程序的选项。
生成的代码Dynamic Link是
String e="https://myappinvite.page.link/?link=https://myappinvite.page.link/?referid=10&apn=com.learnandro&amv=16&st=Please Install the App&si="+some Image Url+"&afl=https://play.google.com/store/apps/details?id=app Package name";
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance()
.createDynamicLink()
.setLongLink(Uri.parse(e))
.buildShortDynamicLink()
.addOnCompleteListener(new OnCompleteListener<ShortDynamicLink>() {
@Override
public void onComplete(@NonNull Task<ShortDynamicLink> task) {
Uri get=task.getResult().getShortLink();
Intent sh=new Intent(Intent.ACTION_SEND);
sh.setType("text/plain");
sh.putExtra(Intent.EXTRA_TEXT,"Vi ew the Amazing Event "+get);
startActivity(Intent.createChooser(sh,"View"));
}
});
Run Code Online (Sandbox Code Playgroud)
该Manifest文件看起来像这样
<activity android:name=".login.LoginActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.LAUNCHER"/>
<data
android:host="myappinvite.page.link"
android:scheme="https" />
</intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)
这是接收动态链接的代码(如果在onCreate活动 内部找到)
FirebaseDynamicLinks.getInstance().getDynamicLink(getIntent())
.addOnSuccessListener(new OnSuccessListener<PendingDynamicLinkData>() {
@Override
public void onSuccess(PendingDynamicLinkData pendingDynamicLinkData) {
if (pendingDynamicLinkData !=null) {
Uri getDynamicLink=pendingDynamicLinkData.getLink();
String id=getDynamicLink.getQueryParameter("referid");
}
}
});
Run Code Online (Sandbox Code Playgroud)
没有获得 Dynamic Link 的完整体验实际上缺少了什么?
| 归档时间: |
|
| 查看次数: |
1435 次 |
| 最近记录: |