2016-03-23 28 views
0

私は少し苦労しています。私はwww.domain.com/test.htmlのような一般的なURLを持っています と私は "テスト"が含まれている場合はAndroidのユーザーが私のアプリを開いて欲しい、そうでなければ、彼らは、 。私はすべてが実装されており、それはmozillaブラウザで動作します。しかし、AndroidでChromeを使用している場合は、アプリが自動的に開くようにする必要があります。Androidのウェブブラウザ(Chrome)からアプリを自動的に開くにはどうすればよいですか?

<script>  window.open("intent://scan/#Intent;scheme=zxing;package=com.google.zxing.client.android;S.browser_fallback_url=http%3A%2F%2Fzxing.org;end","_self") 
    </script> 
:ユーザーがwww.domain.com/test.htmlに入り、私は彼がAndroidとChromeを使用している認識今なら、私はリダイレクトwww.domain.com/android_chrome.html内のスクリプトで意図のものを試してみました

しかし、アプリケーションは自動的に開かれません。私は通常のリンクを使用する場合:

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

それは動作します。しかし、私はそれを自動的に開くようにしたい!

答えて

1

Googleがjavascriptアプリケーションから開始する意図を制限しているため、それが機能しません。私が推測するセキュリティ上の理由。素敵な大きなリンクを表示して、ユーザーがウェブサイトではなくアプリに切り替えられるようにするか、アプリを起動したくない場合は続行させるだけです。

強制的にユーザーがアプリを使用することは悪いです、IMO。それを使用することを提案するスプラッシュ画面は大丈夫ですが、押し込まないでください。

+0

余計なポップアップを作成した場合も、これは起こります。このポップアップは、「はい」を押すと、インテントに指示します。この場合、ユーザーは明示的なジェスチャーを行いましたか?次のようにします: 'if(confirm(" Open GetVise? ")== true){ window.open(" intent:// scan /#Intent; scheme = zxing; package = com.google.zxing.client.android; S .browser_fallback_url = http%3A%2F%2Fzxing.org; end "); } else { } \t 'です。 – JanScott

+0

それを試してくださいが、それはまだジャワスクリプトですので、IMOでもうまくいきません。 – Mark

+0

私は、javascriptを使用しない回避策でそれを行いました。代わりに.htaccessを書き換えルールで使用します。 – JanScott

関連する問題