WebClient에서 onPageFinished() 메서드가 여러번 호출 되는데 한번씩 호출 되게 할 수 없을까요??
구글에 있는 소스 적용해봐도 똑같아서 여기에 질문드립니다!!
class WebClient extends WebViewClient {
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
Log.d(TAG, "WebClient, onPageStarted, Call");
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
Log.d(TAG, "WebClient, shouldOverrideUrlLoading, Call");
view.loadUrl(url);
return true;
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
Log.d(TAG, "WebClient, onPageFinished, Call");
// Log.d(TAG, "onPageFinished, url : " + url);
currentUrl = url;
if(stop) {
cookieClear();
webView.clearHistory();
webView.clearCache(true);
if (!webView.canGoBack()) {
Toast.makeText(MainActivity.this, "HistoryClear & CookieClear ", Toast.LENGTH_SHORT).show();
}
} else if(oneStepCount == 1 && twoStepCount == 1 && !stop) {
webView.clearHistory();
if(!webView.canGoBack()) {
cookieClear();
webView.clearCache(true);
airplaneMode();
oneStepCount = 0;
twoStepCount = 0;
Toast.makeText(MainActivity.this, "End one cycle", Toast.LENGTH_SHORT).show();
}
if(oneStepCount == 0 && twoStepCount == 0 && !stop) {
searchAct();
}
} else {
searchAct();
}
}
}
감사합니다!!