【问题标题】:clicking on test ads(banner or interstitial) crashes android app点击测试广告(横幅或插页式广告)会导致 Android 应用崩溃
【发布时间】:2014-08-25 11:56:11
【问题描述】:

我在我的应用程序中添加了 Admob 横幅和插页式广告(在不同的地方)。为了测试广告是否正常工作,我在发出广告请求时添加了我的测试 deviceId,如下所示,

        AdRequest adRequest = new AdRequest.Builder().addTestDevice("*********...").build();
        adView.loadAd(adRequest);

测试广告按预期出现,但是当我点击测试广告时,应用程序崩溃。正常吗?

错误日志虽然在类似的行中,但会随着测试广告的变化而​​略有变化(活动名称),如下所示,

        android.content.ActivityNotFoundException: Unable to find explicit activity class {com.mobeam.barcodeService/com.google.android.gms.ads.AdActivity}; have you declared this activity in your AndroidManifest.xml?
        08-25 17:10:58.276: W/System.err(27595):    at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1648)
        at android.app.Instrumentation.execStartActivity(Instrumentation.java:1442)
        at android.app.Activity.startActivityForResult(Activity.java:3511)
        at android.app.Activity.startActivityForResult(Activity.java:3472)
        at android.app.Activity.startActivity(Activity.java:3714)
        at android.app.Activity.startActivity(Activity.java:3682)
        at agl.startActivity(SourceFile:71)
        at acl.a(SourceFile:120)
        at agm.a(SourceFile:233)
        at agm.a(SourceFile:165)
        at abl.a(SourceFile:102)
        at agm.a(SourceFile:377)
        at agm.shouldOverrideUrlLoading(SourceFile:293)
        at com.android.webview.chromium.WebViewContentsClientAdapter.shouldOverrideUrlLoading(WebViewContentsClientAdapter.java:293)
        at com.android.org.chromium.android_webview.AwContentsClientBridge.shouldOverrideUrlLoading(AwContentsClientBridge.java:96)
        at com.android.org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method)
        at com.android.org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:27)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:157)
        at android.app.ActivityThread.main(ActivityThread.java:5356)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:515)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
        at dalvik.system.NativeStart.main(Native Method)

我正在使用新的 Admob,并且该应用使用调试密钥进行了签名。我可以假设在发布模式下它会按预期工作吗?如果不是那么如何解决这个问题?

【问题讨论】:

  • 发布您的 AndroidManifest。

标签: android admob


【解决方案1】:

确保您已在 AndroidManfiest.xml 中声明了这一点

<activity
    android:name="com.google.android.gms.ads.AdActivity"
    android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" />

然后您应该能够点击广告并且它不应该崩溃。

【讨论】:

  • 你能发布你的androidManifest的一部分吗?
  • 与 admob 相关的项目是, 我确定我已遵循 Admob 文档。广告出现了,但正如我提到的,当我点击测试广告时,应用程序崩溃了。
  • 您是否单击了订单/导出选项卡中的导出复选框?
  • 当您想使用发布密钥签署应用程序时,您通常会导出。这里的问题是,当应用程序使用调试密钥签名时,测试广告会在点击它们时使应用程序崩溃。但是当应用程序使用发布密钥签名时,普通广告不会在点击它们时使应用程序崩溃。我想我会暂时忍受这个。但问题仍然悬而未决,当点击测试广告时,应用程序在调试模式下崩溃。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多