使用 Chrome 的 Android 意圖

您可以從具有下列功能的 Android 裝置上,直接從網頁啟動應用程式: Android 意圖。您可以實作使用者手勢,透過 自訂配置或使用 intent: 語法。

建立意圖錨點並嵌入網頁內,讓使用者可以選擇 啟動應用程式這樣就能靈活安排應用程式發布的方式和時機 這表示您可以使用 Intent Extras 將資訊傳送至應用程式。

意圖型 URI 的基本語法如下:

intent:  
   HOST/URI-path // Optional host  
   #Intent;  
      package=\[string\];  
      action=\[string\];  
      category=\[string\];  
      component=\[string\];  
      scheme=\[string\];  
   end;

如要進一步瞭解剖析詳細資料,請參閱 Android 原始碼

如果未解析意圖或外部應用程式無法啟動 系統就會將使用者重新導向備用網址您可以指定備用網址 包含意圖 Extra

S.browser_fallback_url=[encoded_full_url]

使用 S.<name> 定義意圖額外項目。這個額外功能 回溯相容Chrome 會移除 browser_fallback_url,因此 目標應用程式沒有看到這個值。

在下列情況中,Chrome 無法啟動外部應用程式:

  • 無法解析意圖。換句話說,沒有任何應用程式能夠處理意圖。
  • JavaScript 計時器試圖在沒有使用者手勢的情況下開啟應用程式。

範例

以下是啟動 Zxing 條碼掃描器應用程式的意圖:

intent:  
   //scan/  
   #Intent;  
      package=com.google.zxing.client.android;  
      scheme=zxing;  
   end;

如要啟動 Zxing 條碼掃描器應用程式,請在錨點上將 href 編碼:

  <a href="intent://scan/#Intent;scheme=zxing;package=com.google.zxing.client.android;end">
    Take a QR code
  </a>

請參閱 Android Zxing 資訊清單,瞭解套件和主機。

指定備用網址時,完整網址會如下所示:

   <a href="intent://scan/#Intent;scheme=zxing;package=com.google.zxing.client.android;S.browser_fallback_url=http%3A%2F%2Fzxing.org;end">
    Take a QR code
  </a>

現在,如果找不到應用程式,網址會將使用者傳送至 zxing.org;連結會在 不是由使用者做出手勢的 JavaScript 觸發, 啟動外部應用程式

注意事項

如果您使用包含 Extras 的意圖叫用 Android 活動, 你也可以附上這些詳細資料

僅限具有類別篩選器 android.intent.category.BROWSABLE 的活動 可以使用這個方法叫用,因為表示應用程式安全無虞 。

在下列情況下,Chrome 不會啟動特定 Intent URI 的外部應用程式:

  • 意圖 URI 從輸入的網址重新導向。
  • 意圖 URI 會在使用者做出手勢時啟動。