2016-08-17 65 views
2

我有兩種類型的深層鏈接。安裝應該嘗試打開應用程序(如果已安裝)的深層鏈接,然後在應用程序未安裝的情況下回退以打開Play商店。第二個深層鏈接;但是,如果安裝了該應用程序,則會嘗試打開該應用程序,否則會打開一個網頁作爲後備。Intent deeplink總是在添加Referr到包後打開Play商店

問題是,當我向包中添加引用參數時,即使安裝了應用程序,它也會開始播放存儲。

安裝深層鏈接:

Intent://mypath/?cc=de&tagset=2#Intent;scheme=myscheme;package=com.mypackage&referrer=myreferrer;

開幕深層鏈接:

Intent://mypath/?cc=de&tagset=2#Intent;scheme=myscheme;package=com.mypackage;S.browser_fallback_url=my_fallback_web_url;

回答

0

Android將使用一切,這是package:;之間來確定應用程序的軟件包名來啓動/安裝。

在您的示例中,軟件包將爲com.mypackage&referrer=myreferrer,與com.mypackage不同。

您可改爲使用S.referrer=myreferrer;,並將其解析到您的應用中。

+0

的S.referrer參數不存在,或者您可以請參閱我你怎麼想通了這一點?我使用了這個參數,但瀏覽器並沒有將S.referrer中的數據傳遞給Play商店。 到目前爲止,傳遞引用者的唯一方法是向包中添加&referrer = myreferrer,這正是導致即使應用程序已安裝也會打開Play商店應用程序的行爲的原因。 –

+0

我不認爲PlayStore在使用Chrome瀏覽器Android Intent啓動時處理引薦來源。你可以嘗試把它放在'mypath /?cc&referrer = myreferrer'之後。 'S.referrer'參數將作爲Bundle參數提供給您的應用程序。你可以使用S.whatever作爲任何價值。 –

+0

我測試了這種方法,結果表明這是錯誤的。瀏覽器不僅僅將每個參數傳遞給Play商店,另一方面,Play商店不會在安裝後將任何參數傳遞給應用程序。 –

0

解決方法是使用未記錄的額外參數S.market_referrer=

Source

相關問題