2016-04-07 17 views
0

ローカルのHTMLを読み込むWebアプリケーションがあります。AndroidスタジオWebviewのGoogle PlayでWebviewオープンリンク

1つのHTMLではGoogle Playアプリへのリンクがありますが、リンクはアプリ内でウェブビュー内で開きます。

iOSデバイスでは、いずれのリンクでもhttps://itunes.apple.com/app/id000が自動的にデバイスにiTunes/App Storeを開きます。

htmlから直接Google Playアプリを開く方法はありますか?

私は_blankまたはmarket://を試していますが、他の質問には示唆されていますが、何も動作しません。

<a href="http://market.android.com/details?id=com.google.earth" target="_blank">App Link</a> 

<a href="market://details?id=com.google.earth" target="_top">App Link 2</a> 

ありがとうございます!

+1

を助ける

webView.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { if (Uri.parse(url).getScheme().equals("market")) { try { Intent intent = new Intent(Intent.ACTION_VIEW); intent.setData(Uri.parse(url)); Activity host = (Activity) view.getContext(); host.startActivity(intent); return true; } catch (ActivityNotFoundException e) { // Google Play app is not installed, you may want to open the app store link Uri uri = Uri.parse(url); view.loadUrl("http://play.google.com/store/apps/" + uri.getHost() + "?" + uri.getQuery()); return false; } } return false; }}); 

に動作しますこれを使用することができます。参照:http://stackoverflow.com/questions/33151246/how-to-handle-intent-on-a-webview-url –

+1

もっと具体的に教えてください。 shouldOverrideUrlLoadingを使用して "http://market.android.com/details?"を解析する必要があります。 「市場://」へ?それでおしまい? – tomDev

+0

'market://'で始まるか、一致するURI 'play.google.com'がGoogle Playアプリを起動するという意図がある場合、両方の方法で解析します。参照:http://developer.android.com/distribute/tools/promote/linking.html –

答えて

0

あなたはそれが多分これはあなたがshouldOverrideUrlLoading` `にURLを自分で解析する必要がありますいずれか