首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android Adview未找到

Android Adview未找到
EN

Stack Overflow用户
提问于 2014-10-01 20:44:39
回答 2查看 913关注 0票数 0

解决方法:请参见如何修复错误的注释。这是一个非常常见的问题,这个主题将修复错误。要证明解决方案有效,请参阅我的免费应用程序:https://play.google.com/store/apps/details?id=com.colour.colourguessfree中的广告。

在我开始之前,我知道这是一个常见的问题,我花了一个晚上在堆叠溢出研究类似的话题,但没有结果。

我对admob和展示广告有很大的麻烦。在我的应用程序中,当它加载到adview是状态内的消息时:必需的XML属性“adSize”丢失了。我已经尝试了无数的方法来解决这个问题,所以我觉得最好的方法就是展示我有什么希望,有人能给我指明正确的方向。

清单:

代码语言:javascript
复制
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example.colourguessfree"
        android:versionCode="1"
        android:versionName="1.0" >

         <uses-sdk
            android:minSdkVersion="14"
            android:targetSdkVersion="21" />
        <uses-permission android:name="android.permission.INTERNET"/>
        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
        <application

            android:allowBackup="false"
            android:icon="@drawable/ic_launcher"
            android:theme="@style/NoActionBar">
            <meta-data android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />
            <activity android:name=".gameover" android:theme="@style/NoActionBar"
                 android:screenOrientation="portrait">
            </activity> 
        <activity android:name="com.google.ads.AdActivity"
                  android:configChanges="keyboard|keyboardHidden|orientation"/>
         </application>

XML:

代码语言:javascript
复制
    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
        android:id="@+id/home"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    <com.google.android.gms.ads.AdView
        android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        ads:adSize="BANNER"
        ads:adUnitId="************"
        ads:loadAdOnCreate="true" >

WorkPlace:

物业:

构建路径:

在这方面的帮助是最受欢迎的,我已经尝试了这么多的修复。一个清晰的向导就太好了!

更新:

这是我从Google服务迁移中尝试的另一种方法。我尝试过的xml代码是:

代码语言:javascript
复制
<com.google.android.gms.ads.AdView
    xmlns:ads="http://schemas.android.com/apk/res-auto"
    android:id="@+id/adView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    ads:adUnitId="MY_AD_UNIT_ID"
    ads:adSize="BANNER"/>

在oncreate中使用java代码,如下所示:

代码语言:javascript
复制
AdView adView = (AdView)this.findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder()
    .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
    .addTestDevice("TEST_DEVICE_ID")
    .build();
adView.loadAd(adRequest);

但是,这在adview中出现了一个错误,在androidmanifest.xml中缺少了与androidmanifest.xml中的adactivity

更新2

我非常迷茫,不确定它是否工作,日志似乎指向它一半工作主要问题是我根本看不见广告。

日志:

代码语言:javascript
复制
10-02 23:26:42.088: W/GooglePlayServicesUtil(5260): Google Play services is missing.
10-02 23:26:42.118: I/Ads(5260): Starting ad request.
10-02 23:26:42.158: I/Ads(5260): Please set theme of AdActivity to @android:style/Theme.Translucent to enable transparent background interstitial ad.
10-02 23:26:42.178: D/WebSettings(5260): mDataPath: /data/data/com.example.colourguessfree
10-02 23:26:42.208: D/WebSettings(5260): mDataPath: /data/data/com.example.colourguessfree
10-02 23:26:42.378: I/Adreno200-EGLSUB(5260): <ConfigWindowMatch:2081>: Format RGBA_8888.
10-02 23:26:42.388: D/memalloc(5260): /dev/pmem: Mapped buffer base:0x5228d000 size:3686400 offset:3072000 fd:82
10-02 23:26:42.588: D/memalloc(5260): /dev/pmem: Mapped buffer base:0x528d9000 size:7405568 offset:6791168 fd:85
10-02 23:26:43.178: W/GooglePlayServicesUtil(5260): Google Play services is missing.
10-02 23:26:43.178: E/GooglePlayServicesUtil(5260): GooglePlayServices not available due to error 1
10-02 23:26:43.208: W/GooglePlayServicesUtil(5260): Google Play services is missing.
10-02 23:26:43.208: E/GooglePlayServicesUtil(5260): GooglePlayServices not available due to error 1
10-02 23:26:43.238: W/dalvikvm(5260): VFY: unable to resolve virtual method 640: Landroid/net/ConnectivityManager;.isActiveNetworkMetered ()Z
10-02 23:26:43.288: D/WebSettings(5260): mDataPath: /data/data/com.example.colourguessfree
10-02 23:26:43.328: V/chromium(5260): external/chromium/net/host_resolver_helper/host_resolver_helper.cc:66: [1002/232643:INFO:host_resolver_helper.cc(66)] DNSPreResolver::Init got hostprovider:0x4cb15230
10-02 23:26:43.328: V/chromium(5260): external/chromium/net/base/host_resolver_impl.cc:1515: [1002/232643:INFO:host_resolver_impl.cc(1515)] HostResolverImpl::SetPreresolver preresolver:0x01aeba08
10-02 23:26:43.328: D/(5260): external/chromium/net/socket/tcp_fin_aggregation_factory.cc: libtcpfinaggr.so successfully loaded
10-02 23:26:43.328: D/(5260): external/chromium/net/socket/tcp_fin_aggregation_factory.cc,: TCP Fin Aggregation initializing method was found in libtcpfinaggr.so
10-02 23:26:43.328: D/TCPFinAggregation(5260): system property net.tcp.fin.aggregation was set
10-02 23:26:43.328: D/TCPFinAggregation(5260): system property net.tcp.fin.aggregation.wait was set, value: 20
10-02 23:26:43.328: D/TCPFinAggregation(5260): system property net.tcp.fin.aggregation.close was set, value: 300
10-02 23:26:43.328: D/TCPFinAggregation(5260): system property net.close.unused.sockets was set, value: 1
10-02 23:26:43.328: D/TCPFinAggregation(5260): Failed to get network status! received ret: -2
10-02 23:26:43.338: V/WebRequest(5260): WebRequest::WebRequest, setPriority = 1
10-02 23:26:43.348: V/chromium(5260): external/chromium/net/disk_cache/hostres_plugin_bridge.cc:52: [1002/232643:INFO:hostres_plugin_bridge.cc(52)] StatHubCreateHostResPlugin initializing...
10-02 23:26:43.348: V/chromium(5260): external/chromium/net/disk_cache/hostres_plugin_bridge.cc:57: [1002/232643:INFO:hostres_plugin_bridge.cc(57)] StatHubCreateHostResPlugin lib loaded
10-02 23:26:43.348: V/chromium(5260): external/chromium/net/disk_cache/hostres_plugin_bridge.cc:63: [1002/232643:INFO:hostres_plugin_bridge.cc(63)] StatHubCreateHostResPlugin plugin connected
10-02 23:26:43.348: V/chromium(5260): external/chromium/net/http/http_cache.cc:1173: [1002/232643:INFO:http_cache.cc(1173)] HttpCache::OnBackendCreated HostStat created
10-02 23:26:43.348: E/chromium(5260): external/chromium/net/disk_cache/stat_hub.cc:190: [1002/232643:ERROR:stat_hub.cc(190)] StatHub::Init - App com.example.colourguessfree isn't supported.
10-02 23:26:43.348: E/chromium(5260): external/chromium/net/disk_cache/stat_hub.cc:190: [1002/232643:ERROR:stat_hub.cc(190)] StatHub::Init - App com.example.colourguessfree isn't supported.
10-02 23:26:43.498: W/Ads(5260): AdWebView unable to handle URL: http://192.168.1.254/mobile-step0.html?org_url=http://googleads.g.doubleclick.net%2fmads%2fstatic%2fmad%2fsdk%2fnative%2fsdk%2dcore%2dv40%2ehtml
10-02 23:26:43.578: E/Ads(5260): JS: Uncaught ReferenceError: AFMA_buildAdURL is not defined (null:1)
10-02 23:26:43.578: E/Web Console(5260): Uncaught ReferenceError: AFMA_buildAdURL is not defined at null:1

google文档太烦人了,经常提到他们不再支持的旧方法.

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-01 22:00:41

试着改变:

代码语言:javascript
复制
 xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"

代码语言:javascript
复制
xmlns:ads="http://schemas.android.com/apk/res-auto"

查看Google:Google服务迁移的本教程

票数 2
EN

Stack Overflow用户

发布于 2014-10-02 13:04:13

我目前有一个混合的遗留admob代码和google 代码。

除了前面提到的应该更改为xmlns:adsxmlns:ads="http://schemas.android.com/apk/res-auto"之外,您还必须:

在清单中更改此内容:

代码语言:javascript
复制
<activity android:name="com.google.ads.AdActivity"
                  android:configChanges="keyboard|keyboardHidden|orientation"/>

至:

代码语言:javascript
复制
 <activity android:name="com.google.android.gms.ads.AdActivity"
              android:configChanges="keyboard|keyboardHidden|orientation"/>

在adview的xml布局中删除此属性,因为它不再受支持,而是以编程方式加载广告:

代码语言:javascript
复制
 ads:loadAdOnCreate="true"

阅读指南Google服务迁移,确保代码中的所有内容都类似于右列中所描述的内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26150316

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档