0

實際需求
如何創建應用程序deeplinking

  • 點擊分享按鈕
  • 生成一個文本/ URL /鏈接
  • 分享此通過的WhatsApp/FB /嘰嘰喳喳/電子郵件其他用戶超鏈接文本等等。
  • 點擊此鏈接,我的應用程序將打開鏈接中傳遞的數據。
  • 類似像YouTube鏈接:https://youtu.be/g5MIJ3Us10k


所做的事情到現在......

我有字符串形式的深層鏈接URL。
當我作爲瀏覽器上的超鏈接訪問它並且我的應用程序正確打開時,它完美地工作。
我需要創建此URL字符串作爲超鏈接,可以從應用程序本身的其他應用程序共享。

使用下面的代碼來生成共享鏈接

Intent shareIntent = new Intent(Intent.ACTION_SEND); 
     shareIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET); 
     shareIntent.setType("text/plain"); 
     shareIntent.putExtra(Intent.EXTRA_SUBJECT, "MyAPPLink"); 
     shareIntent.putExtra(Intent.EXTRA_TEXT, url); //String deeplink url 
     return shareIntent; 

我能夠分享文字其他應用程序,但它不是一個鏈接,而純文本。
如何使其成爲超鏈接,以便當用戶將其分享給其他應用程序時,其他用戶可以單擊鏈接並打開應用程序並將鏈接中的數據傳遞給其他用戶?

UPDATE
以下是深層鏈接URL格式
URL =意圖://#意圖;方案=;包=; S.browser_fallback_url =; END;

更新2
我創建了一個鏈接到我的網站,並附加我的深層鏈接數據
http://example.com/deeplink?id=1234567

我已上傳HTML文件,而無需用戶界面和使用JS我能取我的ID在劇本。
現在,當腳本運行時,我的應用程序不會啓動,而是轉向回退url。

如果我在HTML中放置一個按鈕並點擊該按鈕,我運行腳本,我的應用程序就會啓動。

如何從生成的共享文本啓動我的應用程序?

+0

的URL僅僅是文本中提取傳遞ID。這是由接收它的應用程序來確定如何處理它。 – Kuffs

+0

我們能否看到您的HTML/JS重定向文件的內容?您也可以查看[Branch.io](https://branch.io),因爲您不需要擔心所有這些技術問題。 –

+0

我通過Branch.io瀏覽不知道它的免費或付費! 我想學習新技能,所以我寧願自己的邏輯:) HTML腳本是我爲客戶端做的,需要刪除大量不需要的代碼。 我將很快從JS中提取片段。 請參閱youtube如何分享其鏈接。需要類似的方法。 –

回答

0

我想我已經解決了它。它現在在我的設備上使用chrome瀏覽器作爲默認設置。需要用其他組合進行測試。

問題出在JS上。我把我的重定向調用setTimeout()內,它的工作。

這裏是邏輯流程圖

  • 創建方案,視圖操作和閱覽+默認類別清單中
  • 意圖過濾器創建一個共享意圖和setExtra文本作爲http://example.com/deeplink?id=12345
  • 創建一個空的HTML文件和使用JS,獲取查詢並提取「id」
  • 現在使用setTimeout(),調用重定向深層鏈接URL - > intent://#Intent; scheme =; package =; S.browser_fallback_url =; end;
  • 暴露於深層連結的活動,來自意圖得到dataString和深層鏈接

我希望這可以幫助別人:)