【问题标题】:Webview doesn't load AdSense adsWebview 不加载 AdSense 广告
【发布时间】:2019-04-20 16:39:05
【问题描述】:

我正在做一个 webview 应用程序。我有一个问题:“使用 Chrome 自定义标签时会出现 Adsense 广告,但使用常规网页视图时不会出现 Adsense 广告。” 在普通网页视图中,如何允许广告?

示例图片

   CookieSyncManager.createInstance(getActivity());
    CookieManager cookieManager = CookieManager.getInstance();
    cookieManager.acceptCookie();
    cookieManager.acceptThirdPartyCookies(webView);
    cookieManager.setAcceptCookie(true);
    CookieSyncManager.createInstance(getActivity());
    CookieSyncManager.getInstance().startSync();

    webView.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);
    webView.getSettings().setDisplayZoomControls(false);
    webView.getSettings().setAppCacheEnabled(false);
    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);

webView.getSettings().setUserAgentString("Mozilla/5.0 (Linux; Android 4.4; Nexus 5 Build/BuildID) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0. 0.0 移动版 Safari/537.36"); 字符串 url = "http://solante.pw"; webView.loadUrl(url);

【问题讨论】:

  • 显示网页浏览代码
  • @VladyslavMatviienko 我添加代码
  • 尝试设置一些类似 chrome 的用户代理。可能他们不允许为 webview 默认用户代理投放广告
  • @VladyslavMatviienko 我怎么能这样?
  • 1) 获取 chrome 用户代理。 2)谷歌出如何为webview设置自定义用户代理。 3)做你发现的事情

标签: android webview ads


【解决方案1】:

这可能是一个为时已晚的答案! 我希望它会对某人有所帮助。

经过一些研究,我尝试了这个解决方案,它对我来说效果很好。 只需尝试为您的 webview 设置一个桌面用户代理

String DESKTOP_USER_AGENT = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2049.0 Safari/537.36";
webView.getSettings().setUserAgentString(DESKTOP_USER_AGENT);

【讨论】:

    【解决方案2】:

    只需将此行添加到您的代码中

     webView.setWebChromeClient(new WebChromeClient());
    

    【讨论】:

      猜你喜欢
      • 2023-03-24
      • 2021-11-01
      • 1970-01-01
      • 2018-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多