vue で h5 側のアプリを開きます (Android か Apple かを判断します)

vue で h5 側のアプリを開きます (Android か Apple かを判断します)

1. 開発環境 vue+vant

2. コンピュータシステム Windows 10 Professional Edition

3. h5 エンドの開発中に、ユーザーがアプリをインストールしたかどうかを判断するためにボタンをクリックする必要があることがよくあります (最初に Android か Apple かを判断し、次にアプリがインストールされているかどうかを判断します。インストールされていない場合はダウンロード ページにジャンプし、インストールされている場合は開きます)。

4. では、早速コードを見てみましょう。

<div class="xiding-r" @click="openapp">
 アプリを開く
</div>

5. メソッドに次のコードを追加します。

  オープンアプリ() {
  var u = ナビゲータ.userAgent、
   アプリ = navigator.appVersion;
  var isAndroid = u.indexOf("Android") > -1 || u.indexOf("Linux") > -1;
  var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
  if (isAndroid) {
   // alert("私はAndroidです");
   android.app.android() を呼び出します。
  }
  (IOSの場合) {
   // アラート("私はAppleです");
  }
  },
アンドロイド(){
  var _clickTime = 新しい Date().getTime();
  window.location.href = 'zhihu://'; /***Android の同僚が提供したアプリ契約を開く***/

  // 20ms間隔でタイマーを開始し、累積消費時間が3000msを超えるかどうかを確認します。超えている場合は終了します。var _count = 0, intHandle;
  intHandle = setInterval(関数() {
   _count++;
   var elsTime = new Date().getTime() - _clickTime;
   _count >= 100 || elsTime > 5000 の場合 {
   コンソールログ(_count)
   コンソールログ(elsTime)
   クリア間隔(intHandle);
   // アプリが開いているかどうかを確認します if (document.hidden || document.webkitHidden) {
    // 開いた window.location.href = "zhihu://";
    // アラート('開かれました');
    ウィンドウを閉じる();
    // 戻る;
   } それ以外 {
    // 開いていません // alert('開いていません');
    window.location.href = ""; //ダウンロードリンク}
   }
  }, 20);
  },

5. 注: この場合、私は Zhihu の例を使用しました。

6. 注記

カスタム URL スキームを使用する利点は、他のプログラムでこの URL を介してアプリケーションを開くことができることです。アプリケーション A が URL スキーム:myApp を登録すると、<a href ="myApp://"> を通じてモバイル ブラウザーでアプリケーションを開くことができます。 iOS では、システムが URL スキームを登録し、アプリをインストールしている場合は、上記の Web ページ メソッド (テスト済みで有効) を使用してアプリを開くことができます。注意: iOS では http://xxx のような URL スキームを登録できませんが、Android では登録できます。

これで、vue の h5 からアプリを開く方法 (Android か Apple かを判断する方法) に関するこの記事は終了です。vue の h5 からアプリを開く方法に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue開発におけるブラウザ別の型判定方法
  • vueとAndroidおよびIOS間のインタラクションを実装する方法
  • VueはAndroidかiOSかをどのように判断するのか

<<:  DockerにTensorFlow環境を素早くインストールする方法

>>:  MySQLはinit-connectを使用してアクセス監査機能の実装を増やします

推薦する

このようなシェル スクリプトを使用して、多数の MySQL データベースを強制終了します (推奨)

朝早くに電話で起こされました。あるプロジェクトのデータベースがダウンしていて起動できないとのことでし...

jQueryはhide()とtoggle()関数を使用してカメラブランド表示の非表示機能を実現します。

最近、jQuery を学習しているときに、show()、hide()、toggle() 関数に出会い...

JavaScript 型検出方法の例のチュートリアル

序文JavaScriptはWebフロントエンドで広く使われている言語の一つであり、Webアプリケーシ...

MySQL 5.7 JSON 型の使用の詳細

JSON は、言語に依存しないテキスト形式を使用する軽量のデータ交換形式で、XML に似ていますが、...

mysql data_dirの変更によって発生するエラー問題を解決する

今日は、新しく購入した Alibaba Cloud ECS 環境 (Ubuntu 16.04 LTS...

Iframe の内外のページで JS がどのように動作するかの概要

目次iframeの外側のiframeのコンテンツを取得する方法1方法2 iframe 内の ifra...

MySQLバッチは特定のフィールドのスペースを削除します

Mysql で特定のフィールドからスペースを一括削除する方法はありますか?文字列の前後のスペースだけ...

Navicat for MySQL チュートリアル

まず、Navicat for MySQL をダウンロードしてインストールする必要があります。正規版の...

ブラウザタブの左端に表示されるウェブサイトのアイコンを設定します

この文の目的は何ですか?コードをコピーコードは次のとおりです。 <link rel="...

Vueのミックスインと継承について詳しく説明します

目次序文ミキシンMixin ノート (重複名)ローカルミックスイングローバル ミックスイン継承するミ...

シンプルなカルーセル チャートを実装するための JavaScript の最も完全なコード分析 (ES5)

この記事では、シンプルなカルーセル効果を実現するためのJavaScriptの具体的なコードを参考まで...

Linux で複数のファイルの名前を一度に変更する方法

序文日常業務では、すべての jpg ファイルを bnp に変更したり、名前の 1 を one に変更...

MySQLテーブルのフィールドと関連属性をエクスポートする手順

データベース内のテーブルのフィールドとプロパティをエクスポートし、テーブルを作成してWordに保存す...

WindowsにMySQL5.7圧縮パッケージを素早くインストールする

この記事では、Windows に MySQL 5.7 圧縮パッケージをインストールする方法について説...

MySQL の大きなデータ テーブルにフィールドを追加する方法

序文フィールドの追加は誰でもよく知っていると思います。簡単に記述できます。MySQL テーブルにフィ...