2016-12-09 5 views
2

Webビューのユニバーサルウィンドウアプリケーションを開発中です。実際に私のモバイル対応のウェブサイトは、Windowsの普遍的なアプリケーションのWebビューまたはWebブラウザコントロール内に表示されます..C#UwpアプリのWebブラウザコントロールがデバイスの位置を取得できません

モバイルのEdge(またはデスクトップのChromeなど)から直接Webサイトを使用すると、アプリはユーザーに場所の使用を許可するように通知しますそれは必要なので(HTML Geolocation API)。

しかし、私のアプリではWebブラウザコントロールを使用していますが、これは起こっていません。スクリプトなどを実行することはできません。

私はアプリ内のユーザーの場所にアクセス許可を与えましたが、まだ何もしません。

ウェブブラウザを使用するアプリ内でユーザーの場所を取得するには、他に何ができますか?

+0

あなたはどのアプリを開発しているのかわかりません.HTML5ウェブアプリケーションを開発しましたか? 「HTMLジオロケーションAPI」は[HTML5のジオロケーションAPI](https://dev.w3.org/geo/api/spec-source.html)を意味しますか?お使いのアプリと使用しているAPIについて詳しくご説明ください。 –

+0

これは、HTMLページをレンダリングするUWP内のWebブラウザコントロールです。 HTMLページでジオロ​​ケーションのAPIがuwp webviewのためだけに機能していない – Antho

答えて

2

解決策が見つかりました。

PermissionRequestedイベントを発生させる必要があります。この場合、WebViewPermissionRequestedEventArgsオブジェクトのAllowメソッドを実行する必要があります。このようなもの:

private void webView_PermissionRequested(WebView sender, WebViewPermissionRequestedEventArgs args) 
    { 
     if (args.PermissionRequest.PermissionType == WebViewPermissionType.Geolocation) 
      args.PermissionRequest.Allow(); 
    } 
関連する問題