有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java AdMob横幅不适用于移动数据

我最近开始在安卓应用程序开发,当我尝试在我的应用程序中加载横幅时,logcat中出现以下错误

03-02 17:30:58.509: I/Ads(12181): Use AdRequest.Builder.addTestDevice("My device ID") to get test ads on this device.
03-02 17:30:58.509: I/Ads(12181): Starting ad request.
03-02 17:30:58.799: W/Ads(5515): Error while connecting to ad server: failed to connect to googleads.g.doubleclick.net/74.125.225.250 (port 80) after 60000ms: isConnected failed: ENETUNREACH (Network is unreachable)
03-02 17:30:58.799: W/Ads(12181): There was a problem getting an ad response. ErrorCode: 2
03-02 17:30:58.939: I/Ads(12181): Scheduling ad refresh 60000 milliseconds from now.
03-02 17:30:58.939: W/Ads(12181): Failed to load ad: 2

它只发生在某些设备上(主要是Android 4.1 Jelly Bean),也只发生在移动数据上(使用Telcel México),在WiFi上也能正常工作

我的xml和java代码与AdMob实施指南相同

布局。xml横幅

<com.google.安卓.gms.ads.AdView
        安卓:id="@+id/adView"
        安卓:layout_width="wrap_content"
        安卓:layout_height="wrap_content"
        安卓:layout_alignParentBottom="true"
        安卓:layout_centerHorizontal="true"
        ads:adSize="BANNER"
        ads:adUnitId="My Add Unit Id (Hidden)" />

main活动onCreate方法

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        AdView adView = (AdView) this.findViewById(R.id.adView);
        AdRequest adRequest = new AdRequest.Builder().build();
        adView.loadAd(adRequest);
    }

希望你能帮我解决这个问题


共 (4) 个答案

  1. # 1 楼答案

    可能使用的DNS提供商在到达AdMob服务器时遇到了一些问题(或者应用了一些过滤器以减少ad服务器上的流量)

  2. # 2 楼答案

    如果日期或时间错误,则出现错误2 只需在设备上设置自动日期更正。如果设备上的时间与谷歌服务上的时间不相等,则会出现错误2。这就是你所需要的

  3. # 3 楼答案

    不是一个真正的答案,但注意到你没有复制你的布局。xml头,其中需要一个xml指令。但问题是,广告库无法连接到admob服务器

  4. # 4 楼答案

    我也有同样的问题,而且。。。是 啊我关掉了手机上的WiFi,然后它就正常工作了。所以在我的例子中,我认为是来自我的路由器的延迟/干扰