問題タブ [webchromeclient]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
4960 参照

android - Android WebView WebChromeClient : onProgressChanged() の進行状況の値が不正確です

WebView -> WebChromeClient -> onProgressChanged() で進行状況の値にアクセスする必要があります。進捗の整数値は 0 から 100 に増加せず、ジャンプします。以下は、1 つのページのロードからのサンプル ログ出力と、関連する進行状況番号です。

私は何を間違っていますか?

コード:

0 投票する
1 に答える
262 参照

android - webChromeClient コールバック内で押されたボタンを処理するには?

calss のコールバック ハンドルを作成webChromeClient()し、ボタンをリッスンする方法は? 私が抱えている問題は、buttonedittextフィールドがあり、どちらも と がそのRelativeLayout上に配置されているため、表示された Web ページの内容が と の両方とwebView混ざることを避けることができるということです。フィールドを持つ目的は、ユーザーが Web ページ名を入力できるようにすることです。を持つ目的は、ユーザーが入力した Web ページを起動することです。また、コールバック内でクラスとトーストを使用して、Web ページの読み込みが完了するたびに通知します。しかし、フィールドで指定された Web ページを起動するために を押すたびに、コールバックbuttonedittextedittextbuttonwebClientViewonPageFinishedbuttonedittextonPageFinishWeb ページの読み込みが完了する前であっても、常に呼び出されます。たとえば、 で Web サイトのアドレスを指定してを繰り返しedittext押すbuttonと、 を押した回数だけトーストが出力されますbutton私がここに投稿した私の質問を参照してください。これはほぼ同じ問題に関するものです。それは私の問題を部分的に解決したにもかかわらず、アプリの要求をコーディングしていたときに、ここで参照した質問に対する答え が継ぎ目であり、十分ではないことに気付きました. webChromeViewクラスを使用してその問題を解決する方法はありますか? そしてどうやって?

Java コード:

0 投票する
1 に答える
1089 参照

java - WebView での Android Geolocation

Web ビュー内からユーザーの場所を取得する必要がありますが、場所を取得する許可を求めていません。以下は私のwebviewコードです:

WebView セットアップ

WebChrome クライアント:

WebView クライアント:

許可を求めているわけではなく、理由がわかりません。どこが間違っているのか、誰にもわかりますか? 前もって感謝します!

0 投票する
1 に答える
5259 参照

java - Android webview 内で位置情報を使用する許可を求める

私は webview を使用するアプリケーションを持っており、webview 内にはマップがあります。次のコードを使用して、ユーザーの場所を自動的に見つけることができるようにしています。

マニフェスト ファイルのアクセス許可:

WebView アクティビティ:

WebView 設定:

WebView クライアント:

WebChrome クライアント:

したがって、これは機能していますが、アプリが位置情報サービスを使用できるかどうかをユーザーに確認することなく、ユーザーの位置を自動的に取得します。

この機能をアプリに追加する方法はありますか? ありがとう

0 投票する
0 に答える
272 参照

bitmap - WebChromeClient.onReceivedIcon のアイコンは、後で Android 4.4 以降でリサイクルされます。

public void onReceivedIcon (WebView ビュー、ビットマップ アイコン)

私のコードでは、このコールバックが呼び出されると、アイコンの参照を保持し、それを長期間保持します。これを履歴アイテムのアイコンとして表示する必要があります。Android 4.4 以降を除くすべてのバージョンの Android でうまく機能します。4.4 では、次のようなクラッシュが発生します。

java.lang.RuntimeException: Canvas: リサイクルされたビットマップ android.graphics.Bitmap@65189840 を使用しようとしています

私の質問は、Android 4.4 はこのメソッドが受け取ったアイコンを自動的にリサイクルしますか? Android doc はこれについて何も言っていませんが、以前のバージョンではその仕事をしていないようです。誰でもこれについて知っていますか?呼び出しが chromium/src/android_webview/native/aw_contents.cc#onReceivedIcon(const GURL& icon_url, const SkBitmap& bitmap) 関数で始まることしかわかりませんが、このメソッドはどこで呼び出され、SkBitmap のリサイクルはどこで発生しますか?

クロムの関連コードが推奨されます。事前に感謝します。

0 投票する
1 に答える
1859 参照

android - デバイス Android の WebChromeClient が機能しない

Google Chrome のプロパティを使用する Loading webview を含むこのコードがあります。

問題は、エミュレーターの webview が html5 を含む URL をロードし、それが完全に機能することですが、Android デバイスではデフォルトのブラウザーのプロパティを使用し、html5 は明らかに URL を機能させません。

デフォルトのブラウザーではなく、Google Chrome ブラウザーのプロパティを使用するために、Android デバイスの webview をどのように使用できますか?

何か助けはありますか?

ありがとうございました

0 投票する
1 に答える
3414 参照

android - WebViewClient と WebChromeClient の両方を使用する Android

HTML 内のリンクを操作する必要があるため、WebViewClient を使用してそれを実行しています。問題は、ローカルの HTML ページをロードする iframe がいくつかあるのに、それらが表示されないことです。しかし、私が WebChromeClient を使用すると、それらは機能します!

だから、両方を使いたいのですが、うまくいきません。webViewClient だけが機能しているようですが、理由はわかりません。

マニフェストでインターネット許可と外部ストレージへの書き込みを設定し (html がストレージにあるため)、ハードウェア アクセラレーションも有効にしました。

これは私のコードです:

フラグメントの OnCreateView メソッド内で (ええ、私は PageViewer 内で webview を使用していますが、知ることは重要ではないと思います)。

0 投票する
1 に答える
374 参照

android - Webservice からデータを取得するために 1 時間ごとに実行され、localStorage webview chromeclinet を更新する Android サービス

私の Android アプリでは、 からデータを取得しlocalStorageて表示していlistviewます。アプリが閉じられていても、Web サービスから更新されたデータを取得したいと考えています。

を使用してwebchromeclientいます。サービスを試してみましたが、アプリでのみ開始されlocalStorage、アプリが閉じられているか破棄されているときに操作できず、アラームでサービスをトリガーしようとしました

コード: