admob测试广告出现

我两天前发布了我的Android应用程序,使用了admob广告。 我使用我的个人手机作为测试手机,但在发布之前取出了测试模式代码。 我的admob状态是活跃的,我收到报告的请求和印象,但每当我尝试在我的个人电话上使用该应用程序时,我只会收到“测试广告”。 我不知道为什么。 我查看了我的应用程序的代码,找不到任何错误。 我确实删除了应用程序的测试版本,然后从市场上下载了发布的版本。

我不确定测试广告出现在您的应用中的原因,但关闭它们的一种方法是转到您的Admob应用设置,并选择“禁用所有请求的测试模式”选项作为测试模式设置。

您的客户不会看到调试广告。 你可能有一个像这样的行:

AdManager.setTestDevices( new String[] { AdManager.TEST_EMULATOR, // Android emulator "E83D20734F72FB3108F104ABC0FFC738", // My T-Mobile G1 Test Phone } 

假设E83D20734F72FB3108F104ABC0FFC738是您的个人电话,那么只要该电话提出请求,它就会获得测试广告。 所有其他手机都不符合测试广告的条件,除非它们也单独添加到该方法中。

尼克的回答有效。 (但缺少最后的括号。)

但是,如果我想将我的(尚未发布的)Android应用程序发给10位朋友呢?

是否有任何java代码说“将所有手机视为测试设备”?

以下是将所有设备视为测试设备的代码:

  String aid = Settings.Secure.getString(context.getContentResolver(), "android_id"); try { Object obj; ((MessageDigest) (obj = MessageDigest.getInstance("MD5"))).update(aid.getBytes(), 0, aid.length()); aid = String.format("%032X", new Object[] { new BigInteger(1, ((MessageDigest) obj).digest()) }); } catch (NoSuchAlgorithmException localNoSuchAlgorithmException) { aid = aid.substring(0, 32); } adRequest.addTestDevice(aid);