gpt4 book ai didi

android - 当 Activity 在库中时让 AdView 工作的问题

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:26:15 27 4
gpt4 key购买 nike

所以我有一个项目(实际上是模块,因为我使用的是 IntelliJ,但我将使用 Eclipse 术语)和 Activity(我们称它为 X)加载 AdView 并且一切正常。现在我有另一个 Activity(我们称它为 Y),它在某些操作后打开,该 Activity 在库项目中。 Activity Y 打开得很好并且运行良好,但是我添加到其中的 AdView 中从来没有任何内容,它只是空白。以下是我在日志中看到的一些奇怪消息:

 I/Ads﹕ Starting ad request.
I/webclipboard﹕ clipservice: android.sec.clipboard.ClipboardExManager@4293f940
W/ResourceType﹕ Requesting resource 0x7f0b000e failed because it is complex
E/GooglePlayServicesUtil﹕ The Google Play services resources were not found. Check your project configuration to ensure that the resources are included.
I/Adreno200-EGLSUB﹕ <ConfigWindowMatch:2087>: Format RGBA_8888.
onSizeChanged - w:640 h:100
W/ResourceType﹕ Requesting resource 0x7f0b000e failed because it is complex
E/GooglePlayServicesUtil﹕ The Google Play services resources were not found. Check your project configuration to ensure that the resources are included.
W/ResourceType﹕ Requesting resource 0x7f0b000e failed because it is complex
E/GooglePlayServicesUtil﹕ The Google Play services resources were not found. Check your project configuration to ensure that the resources are included.

这两条消息稍后发生,经过一段时间(接近 60 秒):

 W/Ads﹕ Timed out waiting for WebView to finish loading.
I/Ads﹕ Scheduling ad refresh 60000 milliseconds from now.
W/Ads﹕ Failed to load ad: 2

下面是我用来创建 AdView 的代码:

    adView = new AdView(this);
adView.setAdSize(AdSize.BANNER);
adView.setAdUnitId(id);
buttonsAndSeekbarLayout.addView(adView);
final AdRequest.Builder builder = new AdRequest.Builder();

AdRequest adRequest = builder.build();
// Start loading the ad in the background.
adView.loadAd(adRequest);

我还应该提到,我在那个图书馆项目上使用了 Google Play 服务的其他部分,所以我认为它配置正确。

谢谢。

编辑:我应该提一下,即使我在 xml 上添加了 adView,它仍然只是空白!

EDIT2:在上面添加了一些额外的消息。我还注意到这条消息,经过搜索后似乎与 AdView 相关:

    D/WebKit﹕ SQLite database failed to load from /FileSyetmQuota.db

EDIT3:我发现了一些奇怪的东西。我在该屏幕上添加了应用程序购买,购买完成后,就在我删除广告(因为购买)之前,它会显示一秒钟。

最佳答案

  1. E/GooglePlayServicesUtil:未找到 Google Play 服务资源。检查您的项目配置以确保包含资源。。忽略该消息,即使您已正确运行 GP 服务,它也会出现,这不是问题所在。

  2. 您创建 AdView 和加载广告的代码部分是完美的,这都不是问题(我在几个项目上运行完全相同的代码并且它有效)。

  3. 考虑到上述情况,我的赌注只有两个:

    • 图书馆项目以某种方式干扰了广告的加载。广告加载有超时,如果你正在做一些艰苦的工作,可能没有足够的时间来加载广告并且超时,所以这可能就是你看到 Timed out waiting for WebView to finish loading 的原因. 消息。在这种情况下,请尝试将广告加载放在 Thread(或 AsyncTask)中。

    • 布局渲染问题。您必须检查广告是否有足够的空间显示,即至少 640 宽 x 100 高。如果您没有该空间,则广告不会显示。

----编辑----

要在 Thread 中运行代码,请使用以下代码:

new Thread(
new Runnable() {
@Override
public void run() {
adView = new AdView(this);
adView.setAdSize(AdSize.BANNER);
adView.setAdUnitId(id);

// This will ensure it is run within the main UI.
runOnUiThread(new Runnable() {
public void run() {
buttonsAndSeekbarLayout.addView(adView);
}
});

final AdRequest.Builder builder = new AdRequest.Builder();

AdRequest adRequest = builder.build();
// Start loading the ad in the background.
adView.loadAd(adRequest);
}
}
}).start();

关于android - 当 Activity 在库中时让 AdView 工作的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22734296/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com