AdMob 广告未与 MobFox SDK 在签名的 APK 中一起显示

Posted

技术标签:

【中文标题】AdMob 广告未与 MobFox SDK 在签名的 APK 中一起显示【英文标题】:AdMob Ads not showing with MobFox SDK in signed APK 【发布时间】:2014-07-18 21:08:13 【问题描述】:

当我在 Eclipse 中运行我的应用程序时,一切正常。广告显示并刷新没有任何问题。 (我已经集成了 MobFox SDK 并通过它接收 AdMob 和 MobFox 广告。

但是,当我使用我的私钥库签署我的应用并将其导出,然后将 APK 安装到我的设备上时,AdMob 广告并没有出现......好吧,出现了。

我错过了什么吗?我已经通过直接从 Eclipse 运行它进行了重新测试,它再次从那里工作。

我的代码中是否有什么需要在导出之前进行更改,或者可能与密钥库有关(我之前使用调试密钥库来测试我的 Google Play 游戏服务)。

如果我不确定我在这里缺少什么,我将不胜感激。

【问题讨论】:

【参考方案1】:

是 Proguard 导致了问题!

如果有人将 MobFox 用作他们的广告网络,则应将以下内容添加到您的 proguard-project.txt 中(在撰写本文时,该信息似乎没有出现在他们的集成说明中)。

-keep class com.adsdk.** *;

-keep class com.adsdk.sdk.** *;

-keep class com.adsdk.sdk.video.** *;

-keep class com.mobfox.** *;

-keep class com.mobfox.adapter.** *;

-keep class com.mobfox.sdk.** *;

-keep class com.mobfox.sdk.data.** *;

-keep class com.mobfox.video.** *;

【讨论】:

【参考方案2】:

您是否为应用的生产版本创建了新的客户端 ID?如果您使用调试版本进行测试,那么 SHA1 密钥将与您的签名应用程序不同,因为您使用了自己的密钥库。

在 google API 控制台中,只需使用您用于签署应用程序的密钥库中的 SHA1 密钥创建一个新的客户端 ID。

【讨论】:

嗨@DeveloperPaul,是的,我没有这样做,但现在已经 - 我已经将我的应用程序发布到 Play 商店的 Alpha 版,以便我的测试人员可以使用它。我需要更改代码中的任何内容吗? AdMob 是否以某种方式使用密钥库 - 如果是,我如何通知它我现在使用的是私有密钥库而不是调试密钥库?我已经确认,现在,在创建了第二个客户端 ID 之后,播放服务(即排行榜)正在工作,它只是广告。谢谢!! 我也尝试使用 debug.keystore 导出,它也没有显示来自 AdMob 的广告。同样,我直接从 Eclipse 中运行它,一切正常。有什么想法吗?

以上是关于AdMob 广告未与 MobFox SDK 在签名的 APK 中一起显示的主要内容,如果未能解决你的问题,请参考以下文章

admob广告在签名的apk中不起作用,它在调试版本中工作得很好

使用 AdMob SDK 调用 DFP 时出现无效的广告请求

iOS - Swift Google AdMob SDK 如何在 UITableView 的重复项目中显示不同的广告?

Android上的非页内AdMob中介

在 Flutter 中实现 Admob 原生广告

Admob 原生广告问题