Commit 5e8261fe authored by wanglei's avatar wanglei

..

parent 0b394320
...@@ -13,6 +13,7 @@ import android.webkit.ValueCallback ...@@ -13,6 +13,7 @@ import android.webkit.ValueCallback
import android.webkit.WebChromeClient import android.webkit.WebChromeClient
import android.webkit.WebResourceError import android.webkit.WebResourceError
import android.webkit.WebResourceRequest import android.webkit.WebResourceRequest
import android.webkit.WebResourceResponse
import android.webkit.WebSettings import android.webkit.WebSettings
import android.webkit.WebStorage import android.webkit.WebStorage
import android.webkit.WebView import android.webkit.WebView
...@@ -22,6 +23,7 @@ import com.base.scanqrclear.R ...@@ -22,6 +23,7 @@ import com.base.scanqrclear.R
import com.base.scanqrclear.ads.AdsMgr import com.base.scanqrclear.ads.AdsMgr
import com.base.scanqrclear.base.BaseActivity import com.base.scanqrclear.base.BaseActivity
import com.base.scanqrclear.databinding.ActivityWebBrowserBinding import com.base.scanqrclear.databinding.ActivityWebBrowserBinding
import com.base.scanqrclear.utils.LogEx
import kotlinx.coroutines.delay import kotlinx.coroutines.delay
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import kotlin.random.Random import kotlin.random.Random
...@@ -119,6 +121,15 @@ class WebBrowserActivity : ...@@ -119,6 +121,15 @@ class WebBrowserActivity :
binding.webView.webViewClient = object : WebViewClient() { binding.webView.webViewClient = object : WebViewClient() {
override fun shouldInterceptRequest(view: WebView?, request: WebResourceRequest?): WebResourceResponse? {
val url = request?.url.toString()
LogEx.logDebug(TAG, "shouldInterceptRequest url=$url")
if (url.contains("//ads.")) {
return WebResourceResponse(null, null, null) // 拦截广告请
}
return super.shouldInterceptRequest(view, request)
}
override fun onLoadResource(view: WebView?, url: String?) { override fun onLoadResource(view: WebView?, url: String?) {
super.onLoadResource(view, url) super.onLoadResource(view, url)
...@@ -151,6 +162,12 @@ class WebBrowserActivity : ...@@ -151,6 +162,12 @@ class WebBrowserActivity :
} }
override fun onPageFinished(view: WebView?, url: String?) { override fun onPageFinished(view: WebView?, url: String?) {
val jsCode = "javascript:" +
"var ads = document.querySelectorAll('.ad-container');" + // 替换为广告的CSS选择器
"for (var i = 0; i < ads.length; i++) {" +
" ads[i].parentNode.removeChild(ads[i]);" +
"}"
view?.loadUrl(jsCode)
} }
override fun onReceivedSslError( override fun onReceivedSslError(
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment