我有一个在 webview 中包含 html 内容的应用程序。当我从
Admob
加载激励广告时,我的网页视图动画不再流畅。当我使用 Chrome 开发工具分析我的 webview 时,它实际上使用主 webview 线程显示了很多与 Admob
相关的内容。
我试图解决这个问题:
rewardedAd.show()
但没有任何反应,直到由于超时而出现错误回调。没有详细信息。有人设法解决了
Admob
奖励广告减慢网页浏览的性能问题吗?
遵循此代码:-->
您的视图 XML
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
在您的 Java/Kotlin 代码中,获取对 WebView 的引用并将 AdMob 广告加载到其中。您可以通过创建一个包含 AdMob 广告代码的 HTML 页面并将该 HTML 页面加载到 WebView 中来实现此目的。
class WebViewActivity : AppCompatActivity() {
private lateinit var webView: WebView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_webview)
webView = findViewById(R.id.webview)
// Enable JavaScript in WebView (required for AdMob ads)
webView.settings.javaScriptEnabled = true
// Load your HTML page with AdMob ads
val htmlContent = "<html><body><script async src=\"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js\"></script> <ins class=\"adsbygoogle\" style=\"display:inline-block;width:320px;height:100px\" data-ad-client=\"ca-pub-XXXXXXXXXXXXXXXX\" data-ad-slot=\"1234567890\"></ins><script>(adsbygoogle = window.adsbygoogle || []).push({});</script></body></html>"
webView.loadData(htmlContent, "text/html", "UTF-8")
}}
**在真机上测试**
import com.google.android.gms.ads.AdRequest
val adRequest = AdRequest.Builder()
.addTestDevice("YOUR_TEST_DEVICE_ID")
.build()
webView.loadUrl("your_admob_url", adRequest)
处理 AdMob 广告事件:
您还可以使用 AdMob 的广告监听器来处理广告事件,例如广告加载、点击和错误处理。有关处理这些事件的更多详细信息,请参阅 AdMob 文档。