0

这是我在清单中得到的:

<activity
     android:name=".activities.VidyoSampleActivity"
     android:label="@string/app_name"
android:configChanges="orientation|screenSize">
     <intent-filter>
         <data android:scheme="facetalk" android:host="open"/>
         <action android:name="android.intent.action.VIEW" />
         <category android:name="android.intent.category.DEFAULT" />
         <category android:name="android.intent.category.BROWSABLE" />
     </intent-filter>
 </activity>
<receiver android:name="io.branch.referral.InstallListener" android:exported="true">
<intent-filter>
    <action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
<meta-data android:name="io.branch.sdk.BranchKey" android:value="key_live_hjyeOhAByhF1x452yXtuEjdpCzhMiEAB" />
<meta-data
android:name="io.fabric.ApiKey"
android:value="c13e89c059c32c08041932f2d48b4e5bf1054b4a" />

我正在使用这个版本:compile 'io.branch.sdk.android:library:2.+'

我在我的应用程序类中进行初始化。这是我在 dashboard.branch.io 上设置的 url 方案:facetalk://

但是当我尝试这个链接时:

facetalk://facetalk.vidyo-nl.com/mobile.html?key=saETMuvxjeW2akgzbyt46Xffio&guestname=Test123&secure=yes
它什么也不做。

这是为什么?我什至从 Fabric AndroidStudio 插件创建了分支代码。它仍然不起作用。我究竟做错了什么?让我知道是否需要更多信息

PS:如果我从意图过滤器中删除:

 android:host="open"

它会起作用的。但我认为它不会像那样通过分支。因为它没有输入这个:

    Branch branch = Branch.getInstance();
    branch.initSession(new Branch.BranchReferralInitListener() {
        @Override
        public void onInitFinished(JSONObject referringParams, BranchError error) {
            if (error == null) {
                Log.i("BranchConfigTest", "deep link data: " + referringParams.toString());
            }
        }
    }, this.getIntent().getData(), this);

添加一些日志后。我发现这是在应用程序第一次启动时记录的:

11-16 12:18:45.237: I/BranchConfigTest(25065): deep link data: {"+is_first_session":false,"+clicked_branch_link":true,"room":"DpoxihjuKKKE24FAP2ByTILdZsg","guestname":"John","secure":"true","$marketing_title":"Join Conference","$one_time_use":false,"~creation_source":1,"~feature":"marketing","~id":"325753563785928408","~marketing":true,"+click_timestamp":1479295095,"+match_guaranteed":true,"~referring_link":"https:\/\/facetalk.app.link\/join?room=DpoxihjuKKKE24FAP2ByTILdZsg&guestname=John&secure=true"}

我不明白这是如何显示的?因为我只是启动应用程序,我没有按任何链接。此外,当我按下我创建的链接时,它不再被调用

4

2 回答 2

1

来自 Branch.io 的 Alex 在这里:您需要创建一个 Branch 链接并使用该 URL 进行测试。使用 URI 方案直接输入深层链接路径不是正确的实现,并且(正如您所发现的)将不起作用。

于 2016-11-14T18:07:39.017 回答
0

Branch.io 集成表明我需要这样添加意图:

<intent-filter>
            <data android:scheme="facetalk" android:host="open"/>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
        </intent-filter>

但这对我的分支 2.x 不起作用。这是我能够添加意图的方式:

   <intent-filter android:autoVerify="true">
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="https" android:host="facetalk.app.link" />
        </intent-filter>
于 2016-11-16T12:09:31.727 回答