WebView'da zaman aşımı değerini belirlemenin bir yolu var mı? url yanıt vermek için çok yavaşsa, WebView'un zaman aşımına uğramasını istiyorum.Android WebView TimeOut
cevap
Geçerli sayfanın ilerleyişini getProgress() çağırarak denetleyen bir Zamanlayıcı ayarlayarak ve belirli bir süre sonra eşikten azsa, geçerli sayfanın yüklenmesini kapatabilirsiniz.
bunu 100 değilse i) zamanlayıcı eklemek ve getProgress (çağırarak geçerli sayfanın ilerleyişini kontrol anlamına Yani do henüz stopLoading() öğesini arayabilirim. – user430926
Timer
yerine WebViewClient
onLoadResource
yöntemini kullanabiliriz. Şunun gibi:
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return false;
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
progressDialog.show();
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
Log.d("WEBCLIENT", "onPageFinished");
}
@Override
public void onLoadResource(WebView view, String url) {
super.onLoadResource(view, url);
Log.d("WEBCLIENT","onLoadResource");
if(webView.getProgress() == 100) {
progressDialog.dismiss();
}
}
}
Web görünümü tamamen sıkışmışsa bunun işe yaramayacağını düşünüyorum. –
web sayfası sıkışmış araçlar ise ilerleme çubuğu kadar gösterilecektir Yani, ilerleme, 100 olmayacak webView.getProgress() 100 – John
olan soru ilerleme çubuğu, ancak zaman aşımı ilgili değildi. Bu yöntem, web sayfasının yüklenmesi, yüzde olarak tamamen kapanırsa, bu işlevler işe yaramazdı, çünkü bu işlevlerin hiçbiri aranmayacaktı, bu yüzden harekete geçme ihtimali yok. –
bu yardımcı shud http://stackoverflow.com/a/7772884/169630 –