首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Firebase动态链接无法在android中将我的应用程序作为单独的应用程序打开

Firebase动态链接无法在android中将我的应用程序作为单独的应用程序打开
EN

Stack Overflow用户
提问于 2017-10-06 07:42:29
回答 2查看 1.3K关注 0票数 3

为什么firebase动态链接不能打开单独的应用程序?

下面是我用来创建动态链接的代码

代码语言:javascript
复制
    Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink()

            .setLink(Uri.parse(DEEP_LINK_URL))
            .setDynamicLinkDomain(domain)
            .setAndroidParameters(new DynamicLink.AndroidParameters.Builder()
                    .setMinimumVersion(0)
                    .setFallbackUrl(marketUri)
                    .build())
            .buildShortDynamicLink()

            .addOnCompleteListener(activity, new OnCompleteListener<ShortDynamicLink>() {
                @Override
                public void onComplete(@NonNull Task<ShortDynamicLink> task) {
                    if (task.isSuccessful()) {
                        Uri shortLink = task.getResult().getShortLink();
                        Uri flowchartLink = task.getResult().getPreviewLink();
                        Log.d("DynamicLink", "shortLink: " + shortLink);
                        shareDeepLink(shortLink.toString());
                        Log.d("DynamicLink", "flowchartLink: " + flowchartLink);

                    } else {
                        // Error
                        // ...
                    }
                }
            });
EN

回答 2

Stack Overflow用户

发布于 2017-10-31 21:53:03

WhatsApp正在打开动态链接,并且他们不会将其作为新任务(FLAG_ACTIVITY_NEW_TASK)打开。

Firebase动态链接目前通过调用应用程序使用的大多数标志,如果调用应用程序想要在同一任务堆栈中打开网页,那么FDL应用程序也应该这样做。

所以在这种情况下,没有办法解决这个问题,对不起!

票数 0
EN

Stack Overflow用户

发布于 2019-06-23 21:25:41

我知道这个问题已经有一段时间了,但仍然是:我刚刚尝试使用FLAG_ACTIVITY_NEW_TASK标志重新启动MainActivity,但它似乎工作得很好!

根据您的用例,您可能需要实现某种方法来将信息从动态链接传输到“新”应用程序实例。

代码语言:javascript
复制
fun checkForPendingLink(intent: Intent) {
    FirebaseDynamicLinks.getInstance()
            .getDynamicLink(intent)
            .addOnSuccessListener(activity) { pendingDynamicLinkData ->
  // Do something with the link's data

  //Since the app was opened via the link, it is on the back stack of the application containing the link
  //Restart the MainActivity as new task to decouple it
  val restartIntent = Intent(activity, MainActivity::class.java)
  restartIntent.flags = Intent.FLAG_ACTIVITY_NEW_TASK
  startActivity(restartIntent)
  finish()
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46596294

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档