Android 2.2 と 3.1 で WebView クラスに異なる動作はありますか?
2 つの異なるデバイスで同じアプリをテストして得た情報を次に示します。最初のデバイスは Android 2.2 で、もう 1 つは 3.1 です。
- アプリのターゲットは 2.1 です
- アクセスしたいページは ASP.net ページです
2.2 で実行中
- shouldOverrideUrlLoading は正常に呼び出されます
- onPageStarted と onPageFinished が複数回呼び出されています
- ページの読み込みが終了すると、webview の onNewPicture が 1 回呼び出されます。
3.1で実行
- shouldOverrideUrlLoading は呼び出されません。同じ作業を行うには webView.load(url) だけで十分です
- onPageStarted と onPageFinished は一度呼び出されます
- webview の onNewPicture が呼び出されない
私の問題です。ページの読み込み中にダイアログを表示する必要がありますが、これらの違いをどうすればよいかわかりません。
onPageStarted でダイアログを作成し、onPageFinished でダイアログを閉じると、2.2 では複数回表示されて閉じますが、3.1 では正常に動作します。
それ以外の場合、shouldOverrideUrlLoading でダイアログを作成して onNewPicture で閉じると、2.2 では正常に動作しますが、3.1 では表示されません。