۱۳۹۴/۰۴/۲۱, ۰۸:۴۵ ب.ظ
با سلام
من بوسیله WebView و دستور shouldOverrideUrlLoading تنظیم کردم که اگر لینک داخل محتویات html داخل webview مثلا شامل Ads بود و کاربر روی اون لمس کرد، به اکتیویتی Ads رجوع بشه. این عمل در اندروید جدید کار میکنه ولی در اندروید نسخه 4.2.2 به قبل یکبار که لمس کنم کار میکنه ولی اگر دکمه Back بزنم و دوباره لمس کنم دیگه کار نمیکنه و باید یک مرتبه اپلیکیشن بسته بشه و دوباره اجرا بشه تا کار کنه. آیا راه حلی برای رفع مشکل هست؟
کدهای من:
من بوسیله WebView و دستور shouldOverrideUrlLoading تنظیم کردم که اگر لینک داخل محتویات html داخل webview مثلا شامل Ads بود و کاربر روی اون لمس کرد، به اکتیویتی Ads رجوع بشه. این عمل در اندروید جدید کار میکنه ولی در اندروید نسخه 4.2.2 به قبل یکبار که لمس کنم کار میکنه ولی اگر دکمه Back بزنم و دوباره لمس کنم دیگه کار نمیکنه و باید یک مرتبه اپلیکیشن بسته بشه و دوباره اجرا بشه تا کار کنه. آیا راه حلی برای رفع مشکل هست؟
کدهای من:
کد پیاچپی:
webView.setWebViewClient(new WebViewClient(){
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url != null && url.contains("Ads")) {
//Go To Ads Activity
startActivity(new Intent(Main.this, Ads.class));
return false;
}
else {
view.getContext().startActivity(
new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
return true;
}
}