問題タブ [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.
android - setWebViewClientとsetWebChromeClientの違いは何ですか?
setWebViewClient
Androidとの違いは何setWebChromeClient
ですか?
android - WebViewClientからアクティビティへのAndroidWebView通信
シンプルなhelloworldアプリがあります。ユーザーが「Cnn.com」をクリックしたことをアクティビティに伝えようとしています
どうすればいいですか。
(私はC#.NETのバックグラウンドから来ています)
javascript - android:webviewがカスタムWebViewClientでjavascriptをロードしない
JavaScriptの処理を停止するWebView
カスタムを追加しようとするまで機能する、非常に基本的なものがあります。webViewClient
私は何か間違ったことをしていますか?WebViewのアドレスバーとメニューオプションを取り除く別の方法はありますか?
android - Android - API レベル 4 で Android WebViewClient のフォーム POST をインターセプトする方法
私は好きなものにWebViewClient
添付してWebView
います:
これが私の実装ですMyWebViewClient
:
WebView
経由でロードする URL を指定しますloadUrl()
。ページにリンク ( a href...
) がある場合、shouldOverrideUrlLoading
メソッドが呼び出され、リンクのクリックをインターセプトできます。
ただし、メソッドが であるフォームがある場合POST
、shouldOverrideUrlLoading
メソッドは呼び出されません。
ここで同様の問題に気付きました: http://code.google.com/p/android/issues/detail?id=9122これはpostUrl
、私のWebView
. ただし、この API は API レベル 5 以降でのみ使用できます。
API レベル 4 を使用している場合はどうすればよいですか? フォームの投稿を傍受する他の方法はありますか?
android - WebViewClient の onPageFinished が正しく起動しないようです
これについて別の SO の質問を見たことがありますが、解決されませんでした。
アプリケーションで生成されたhtmlでLoadData()を使用しています。
新しいテキストの後に数行の空白行を追加すると、ページがスクロールし、テキストが魔法のように表示されるまで少し時間がかかることに気付きました (スクロールせず、フェードインのように表示されます)。
.getContentHeight() を監視すると、onPageFinshed() イベントでは更新されませんが、その後ページにテキストが追加されると更新されます。
getContentHeight を監視するタイマー イベントを作成しました。getContentHeight が変更され、 browser.pageDown(true) を発行した後でさえ、ページはまだ下にスクロールしていました。
初めてアクティビティに入ったときは問題なく動作しているようです。私の問題は、newInnerHTML に数行を追加した場合にのみ発生します。
さらに、関連するビューにはヘッダーとフッターがあり、ブラウザが中央にあります。webView はフッターの背後にはありません。
これはバグですか、それとも何か不足していますか?
ティア、ジム
このコードは、アクティビティの onCreate 内にあります。
このメソッドは、アクティビティの onCreate の後にあります
プライベート ボイド UpdateMessageDisplay() {
android - ページの読み込みが実際に終了するタイミングを知る必要があります
私はまだAndroidを初めて使用し、Webビューを備えたアプリケーションを持っています。
Webビューがランダムな数のリダイレクト(同じページへの場合もあり、リダイレクトの順序も変更される)があるページの読み込みを終了するタイミングを知る必要があるため、完全に読み込まれたページがある場合にのみスプラッシュ画面を削除できます。
webviewclientでは、onNewPictureと同様に、onPageStarted関数とonPageFinished関数がリダイレクトごとに1回呼び出されます(リダイレクト中は画面が常に空白になります)。そのため、最後に呼び出されたのはいつかわかりません(実際にページが読み込まれました)。
また、onLoadResourceを使用して、ロードされたリソースの数をカウントしようとしましたが(危険で信頼性の低いアプローチですが、ここでは必死になっています)、ページがキャッシュされた後、1回または2回しか呼び出されないため、これも失敗しました。
それは私が今まで知っていることを使って解決することができない1つの大きなパズルです、誰かが私を助けてくれますか?
よろしくお願いします。
android - WebViewClient を WebView に設定すると正しく機能しない
Twitterで認証するアプリを書いています。アプリのサーバーに WebView リンクをロードすると、Twitter 承認ページにリダイレクトされます。この前に、ユーザーは DefaultHttpClient を使用してアプリ サーバーにログインしています。
書くだけで_webView.loadUrl(link);
すべてが正しく機能しますが、 _webView.setWebViewClient(new WebViewClient(){});
リンクをロードする前に追加すると、アプリのサーバーで認証にリダイレクトされます。
このリダイレクトを削除するにはどうすればよいですか?
android - HTMLボタンのクリックをインターセプト
ユーザーが HTML ボタンをクリックしたときにインターセプトされる可能性はありますか? 2 つのボタンを含むログイン ページを読み込む webviewclient があります。許可と拒否。拒否ボタンが押されたら傍受してほしい。(拒否と許可は同じbasUrlを持ち、jsは正しいリダイレクトを行います)。
前もって感謝します
android - Android-WebViewClientはページの読み込みが非常に遅い
開発者として、3G接続のAndroid webviewclientで実行されるアプリ(Webページを使用)の構築に関しては、かなり悪い経験をしました。私のユーザーの何人かは、いくつかのページがロードするのに最大10分かかると言っています。(イライラして誇張されているかどうかはわかりません。)個人的には、Android2.2を実行しているHTCDesireを使用し、自分の携帯電話でアプリをテストしました。実際、ローカルに保存されたWebページを使用してAJAXリクエストを行うアプリの場合でも、3Gでは非常に低速です。ほとんどの場合、タイムアウトして空白のページが表示されます。WIFIを使用している場合は、正常に動作し、非常に高速です。
Android2.2のネイティブブラウザは非常に高速だと多くの人が言っています。ただし、私にとっては、ネイティブブラウザアプリも3Gでは非常に遅いと言わざるを得ません。時々、Googleモバイルホームページはロードさえ完了しません。私はシンガポールにいるので、ほとんどの場所で3Gカバレッジで問題ないはずです。
問題を引き起こしているのはデバイスのハードウェアですか?
android - WebViewからのHTTPリクエストをインターセプトしてオーバーライドします
アプリケーションにWebViewがあり、そのサイトでいくつかのサイトが開かれています(常に同じですが、それは自分のページです)。このサイトには、リモートホストからいくつかの画像をロードするJSコードがあります。
そのような画像へのリクエストを(URLパターンで)インターセプトして自分のコンテンツ(つまり別の画像)を返すか、内部アプリケーションロジックに応じてリクエストをそのままにしておきたいです。
それは可能ですか?
編集:質問の現在の状態...
WebView
WebViewClient
(Axarydaxによって指摘されているように)を設定する機能があります。WebViewClient
2つの便利な方法があります
shouldOverrideUrlLoading
onLoadResource
shouldOverrideUrlLoading
読み込みがページの相互作用によってトリガーされる場合(つまり、ページ上のリンクがクリックされた場合、WebView.loadURL( "")はこのメソッドをトリガーしません)、URLの読み込みをインターセプトできます。falseを返すことでURLの読み込みをキャンセルすることもできます。このアプローチは使用できません。なぜなら、ページリソースの読み込みを傍受することができないからです(そして、私が傍受する必要があるのは、そのようなページリソースです)。
onLoadResource
そのページリソース(および画像!Jessyjonesへのthx)が読み込まれるたびにトリガーされますが、それをキャンセルする方法はありません。そのため、この方法は私のタスクにも適していません。