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 ソースコードをご覧ください。

インテントが解決されない場合や、外部アプリが起動しない場合、 ユーザーを代替 URL にリダイレクトできます代替 URL を指定したり :

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 マニフェストをご覧ください。

代替 URL を指定した場合、完全な URL は次のようになります。

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

アプリが見つからない場合、URL から zxing.org に誘導されるようになりました。リンクは次のとおりです。 ユーザー操作なしで JavaScript によってトリガーされたり、 外部アプリケーションを起動します

考慮事項

Extras を含むインテントを使用して Android のアクティビティを呼び出す場合は、次のようになります。 これらの詳細情報を含めることもできます

カテゴリフィルタ android.intent.category.BROWSABLE を持つアクティビティのみ このメソッドは、アプリが安全であることを示す、このメソッドを使用して呼び出すことができます。 アクセスできます。

次の場合、Chrome は特定のインテント URI に対して外部アプリを起動しません。

  • インテント URI が入力された URL からリダイレクトされる場合。
  • インテント URI は、ユーザー操作なしで開始されます。