1

我已跟进示例应用程序文档来设置我的应用程序以支持深度链接。我link是这样的:(也使用了网站上 Branch Dashbord 的链接)

> Branch.getInstance(getApplicationContext()).getContentUrl("viewer", null, new Branch.BranchLinkCreateListener() {
            @Override
            public void onLinkCreate(String url, BranchError error) {
                //Log.i(TAG, "URL is: " + url);
                Toast.makeText(MainActivity.this, url, Toast.LENGTH_LONG).show();
            }
        });

在测试模式下,我在我的AndroidManifest

<meta-data android:name="io.branch.sdk.TestMode" android:value="true"/>

当我从 AndroidStudio 运行应用程序并从浏览器访问生成的 url 时,它总是打开我的应用程序,因此它的行为符合预期。

我的问题是发布版本。当我单击url由发布版本生成的(签名的 apk)时,它不起作用(提示我转到 Google Play 页面)。

脚步:

  1. 我从上面的行中删除AndroidManifest(也尝试设置<meta-data android:name="io.branch.sdk.TestMode" android:value="false" />仍然没有用);
  2. Build-Generate Signed APK然后通过电子邮件发送 apk
  3. 在设备上打开电子邮件,然后单击链接。

已签名应用生成的链接不起作用

调试应用程序生成的链接也适用于生产应用程序。

我不知道是否有必要共享更多代码,因为该应用程序在测试模式下工作,但如果需要,请告诉我,我会这样做。

  • 怎么了?
  • 我在做正确的步骤吗?应用程序是否应该在 GooglePlay生产链接上发布才能正常工作?(在我的假设不是)。这是正确的方法吗?
  • 当应用程序将发布到 GooglePlay 时,我应该使用什么链接?
  • 发布应用程序后,任何链接都可以使用吗?
4

2 回答 2

0

我突然想到了一些事情:1)当您从测试转到实时版本时,您需要将分支密钥从测试版本更新到实时版本。2)您对您认为它损坏的原因的描述:

我的问题是发布版本。当我单击发布版本(签名的 apk)生成的 url 时,它不起作用(提示我转到 Google Play 页面)。

请记住,Branch 链接不是简单的 URI 方案调用,单击链接会将您发送到服务器,该服务器会根据从 SDK 收集的数据检查您是否曾经打开过该应用程序。如果是这样,Branch 会调用 URI 方案并启动应用程序。如果没有,Branch 会将您定向到 Google Play 商店。因此,被定向到 Play 商店可能是您在此处的预期行为,具体取决于您是否在测试流程中打开应用程序(从您的描述中不清楚)。

这里有一个涵盖此流程的文档:https ://dev.branch.io/how_branch_links_work/

我倾向于认为一切正常。但是,如果您仍然不确定,请给我们发送电子邮件 - support[at]branch.io - 我们非常乐意与您一起解决问题。

于 2015-10-05T17:12:07.823 回答
0

发布到 Google Play 后工作。

于 2015-10-06T07:31:39.760 回答