問題タブ [webviewclient]

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 に答える
153871 参照

android - setWebViewClientとsetWebChromeClientの違いは何ですか?

setWebViewClientAndroidとの違いは何setWebChromeClientですか?

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

android - WebViewClientからアクティビティへのAndroidWebView通信

シンプルなhelloworldアプリがあります。ユーザーが「Cnn.com」をクリックしたことをアクティビティに伝えようとしています

どうすればいいですか。

(私はC#.NETのバックグラウンドから来ています)

0 投票する
3 に答える
7040 参照

javascript - android:webviewがカスタムWebViewClientでjavascriptをロードしない

JavaScriptの処理を停止するWebViewカスタムを追加しようとするまで機能する、非常に基本的なものがあります。webViewClient私は何か間違ったことをしていますか?WebViewのアドレスバーとメニューオプションを取り除く別の方法はありますか?

0 投票する
3 に答える
31208 参照

android - Android - API レベル 4 で Android WebViewClient のフォーム POST をインターセプトする方法

私は好きなものにWebViewClient添付してWebViewいます:

これが私の実装ですMyWebViewClient

WebView経由でロードする URL を指定しますloadUrl()。ページにリンク ( a href...) がある場合、shouldOverrideUrlLoadingメソッドが呼び出され、リンクのクリックをインターセプトできます。

ただし、メソッドが であるフォームがある場合POSTshouldOverrideUrlLoadingメソッドは呼び出されません。

ここで同様の問題に気付きました: http://code.google.com/p/android/issues/detail?id=9122これはpostUrl、私のWebView. ただし、この API は API レベル 5 以降でのみ使用できます。

API レベル 4 を使用している場合はどうすればよいですか? フォームの投稿を傍受する他の方法はありますか?

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

android - WebViewClient の onPageFinished が正しく起動しないようです

これについて別の SO の質問を見たことがありますが、解決されませんでした。

アプリケーションで生成されたhtmlでLoadData()を使用しています。

新しいテキストの後に数行の空白行を追加すると、ページがスクロールし、テキストが魔法のように表示されるまで少し時間がかかることに気付きました (スクロールせず、フェードインのように表示されます)。

.getContentHeight() を監視すると、onPageFinshed() イベントでは更新されませんが、その後ページにテキストが追加されると更新されます。

getContentHeight を監視するタイマー イベントを作成しました。getContentHeight が変更され、 browser.pageDown(true) を発行した後でさえ、ページはまだ下にスクロールしていました。

初めてアクティビティに入ったときは問題なく動作しているようです。私の問題は、newInnerHTML に数行を追加した場合にのみ発生します。

さらに、関連するビューにはヘッダーとフッターがあり、ブラウザが中央にあります。webView はフッターの背後にはありません。

これはバグですか、それとも何か不足していますか?

ティア、ジム

このコードは、アクティビティの onCreate 内にあります。

このメソッドは、アクティビティの onCreate の後にあります

プライベート ボイド UpdateMessageDisplay() {

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

android - ページの読み込みが実際に終了するタイミングを知る必要があります

私はまだAndroidを初めて使用し、Webビューを備えたアプリケーションを持っています。

Webビューがランダムな数のリダイレクト(同じページへの場合もあり、リダイレクトの順序も変更される)があるページの読み込みを終了するタイミングを知る必要があるため、完全に読み込まれたページがある場合にのみスプラッシュ画面を削除できます。

webviewclientでは、onNewPictureと同様に、onPageStarted関数とonPageFinished関数がリダイレクトごとに1回呼び出されます(リダイレクト中は画面が常に空白になります)。そのため、最後に呼び出されたのはいつかわかりません(実際にページが読み込まれました)。

また、onLoadResourceを使用して、ロードされたリソースの数をカウントしようとしましたが(危険で信頼性の低いアプローチですが、ここでは必死になっています)、ページがキャッシュされた後、1回または2回しか呼び出されないため、これも失敗しました。

それは私が今まで知っていることを使って解決することができない1つの大きなパズルです、誰かが私を助けてくれますか?

よろしくお願いします。

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

android - WebViewClient を WebView に設定すると正しく機能しない

Twitterで認証するアプリを書いています。アプリのサーバーに WebView リンクをロードすると、Twitter 承認ページにリダイレクトされます。この前に、ユーザーは DefaultHttpClient を使用してアプリ サーバーにログインしています。

書くだけで_webView.loadUrl(link);すべてが正しく機能しますが、 _webView.setWebViewClient(new WebViewClient(){});リンクをロードする前に追加すると、アプリのサーバーで認証にリダイレクトされます。

このリダイレクトを削除するにはどうすればよいですか?

0 投票する
2 に答える
1583 参照

android - HTMLボタンのクリックをインターセプト

ユーザーが HTML ボタンをクリックしたときにインターセプトされる可能性はありますか? 2 つのボタンを含むログイン ページを読み込む webviewclient があります。許可と拒否。拒否ボタンが押されたら傍受してほしい。(拒否と許可は同じbasUrlを持ち、jsは正しいリダイレクトを行います)。

前もって感謝します

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

android - Android-WebViewClientはページの読み込みが非常に遅い

開発者として、3G接続のAndroid webviewclientで実行されるアプリ(Webページを使用)の構築に関しては、かなり悪い経験をしました。私のユーザーの何人かは、いくつかのページがロードするのに最大10分かかると言っています。(イライラして誇張されているかどうかはわかりません。)個人的には、Android2.2を実行しているHTCDesireを使用し、自分の携帯電話でアプリをテストしました。実際、ローカルに保存されたWebページを使用してAJAXリクエストを行うアプリの場合でも、3Gでは非常に低速です。ほとんどの場合、タイムアウトして空白のページが表示されます。WIFIを使用している場合は、正常に動作し、非常に高速です。

Android2.2のネイティブブラウザは非常に高速だと多くの人が言っています。ただし、私にとっては、ネイティブブラウザアプリも3Gでは非常に遅いと言わざるを得ません。時々、Googleモバイルホームページはロードさえ完了しません。私はシンガポールにいるので、ほとんどの場所で3Gカバレッジで問題ないはずです。

問題を引き起こしているのはデバイスのハードウェアですか?

0 投票する
7 に答える
117737 参照

android - WebViewからのHTTPリクエストをインターセプトしてオーバーライドします

アプリケーションにWebViewがあり、そのサイトでいくつかのサイトが開かれています(常に同じですが、それは自分のページです)。このサイトには、リモートホストからいくつかの画像をロードするJSコードがあります。

そのような画像へのリクエストを(URLパターンで)インターセプトして自分のコンテンツ(つまり別の画像)を返すか、内部アプリケーションロジックに応じてリクエストをそのままにしておきたいです。

それは可能ですか?

編集:質問の現在の状態...

WebViewWebViewClient(Axarydaxによって指摘されているように)を設定する機能があります。WebViewClient2つの便利な方法があります

  • shouldOverrideUrlLoading
  • onLoadResource

shouldOverrideUrlLoading読み込みがページの相互作用によってトリガーされる場合(つまり、ページ上のリンクがクリックされた場合、WebView.loadURL( "")はこのメソッドをトリガーしません)、URLの読み込みをインターセプトできます。falseを返すことでURLの読み込みをキャンセルすることもできます。このアプローチは使用できません。なぜなら、ページリソースの読み込みを傍受することができないからです(そして、私が傍受する必要があるのは、そのようなページリソースです)。

onLoadResourceそのページリソース(および画像!Jessyjonesへのthx)が読み込まれるたびにトリガーされますが、それをキャンセルする方法はありません。そのため、この方法は私のタスクにも適していません。