2016-11-14 107 views
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.+'

而且我在應用程序類做初始化。 這是URL方案我已在dashboard.branch.io設置: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"} 

我不明白這是如何被顯示?因爲我剛啓動應用程序,我沒有按任何鏈接。 此外,當我按我創建了一個鏈接,這個不會被調用了

回答

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> 
+0

這其實並不正確。你添加的是[App Links]的意圖過濾器(https://dev.branch.io/getting-started/universal-app-links/guide/android/)。前者是標準的[URI方案選項](https://dev.branch.io/getting-started/sdk-integration-guide/guide/android/)。您需要*這兩個*以用於Android上的全部工作分支實施 –

+0

第一個不能像那樣工作。我修改它,拿出android:host =「open」,它的工作原理,但我不知道它是否工作原因正常的uri計劃或通過分支工作? –

+0

這取決於...你是否打開了一個URI方案地址或一個生成的分支鏈接? –

1

亞歷克斯從Branch.io這裏:你需要create a Branch link和測試與URL。使用URI方案直接輸入深層鏈接路徑不是正確的實現,並且(如您所發現的)不起作用。

+0

我創建了一個分叉路段,從市場營銷。但如果我嘗試打開它,它會把我的Chrome瀏覽器而不是我的應用程序 –

+0

這就像它甚至不承認我已安裝該應用程序。 –

+0

有幾種原因可能會導致這種情況發生,並且如果沒有更多細節,則很難進行調試。我建議向分支機構[集成團隊]提交一張票(https://support.branch.io/support/tickets/new) –