Articles of AdMob广告

如何以编程方式为AdMob指定adUnitId?

我正在尝试以编程方式将adUnitId设置为来自新版Google Play服务(旧版AdMob)的广告。 我在XML中使用它(在 ): 这在onCreate()中: AdView mAdview = (AdView)findViewById(R.id.adView); mAdview.setAdUnitId(((App)getApplication()).getAdmobKey()); mAdview.setAdListener(new AdListener() { @Override public void onAdLoaded() { super.onAdLoaded(); findViewById(R.id.adView).setVisibility(View.VISIBLE); } }); AdRequest adRequest = new AdRequest.Builder() .addTestDevice(AdRequest.DEVICE_ID_EMULATOR) .build(); mAdview.loadAd(adRequest); 我得到: 必须在调用loadAd之前设置广告尺寸和广告单元ID。 所以第二种选择是以编程方式制作广告。 新的XML: 新代码: AdView mAdview = new AdView(this); … ((LinearLayout)findViewById(R.id.adView)).addView(mAdview); mAdview.loadAd(adRequest); 但我得到了同样的错误。 我还尝试从com.google.android.gms.ads.AdViewinheritance来制作自定义视图,但这是最终的。 有什么建议吗?

如何在代码中将视图添加到线性布局的顶部?

我需要在代码中为线性布局添加一个admob adview,但我需要将其插入布局的顶部,而不是底部。 有没有办法做到这一点?

当应用处于“待发布”阶段并由审核人/测试人员(Google Play商店)使用/审核时,InstallerPackageName是什么?

情况 我的应用程序中有一组function,它们根据安装的商店进行更改 。 例如,我想为家庭观众和儿童展示一组更受限制的广告,以便有资格参加Google Play for Education类别。 在其他商店,我仍然想限制,但不希望像过滤广告一样严格。 我最后的一般观察是,如果我选择加入“Google Play for Education”类别,则需要花费更多时间才能发布,因为以下内容(如开发人员控制台所述): 选中此框会提交此应用,以便包含在Google Play for Education的“教育工作者推荐”部分中。 关于推荐哪些应用程序的最终决定是由第三方教师网络完成的。 如果您的应用被选中,我们将通过电子邮件通知您。 如果没有,您的应用仍可在Google Play for Education中搜索。 现在,在应用程序在此类别中发布教师网络之前,我假设,下载并测试/validation是否符合指南并且没有违规。 问题 为了区分我安装的商店我显然使用这个: PackageManager packageManager = context.getPackageManager(); String installer = packageManager.getInstallerPackageName(packageName); if (installer == null) installer = “”; //to avoid NPE if (installer.equals(“com.android.vending”)) { //It is installed from Google Play store //PROBLEM: THIS […]

Admob AdView导致ScrollView在显示时滚动

我有以下XML布局 进入LinearLayout我通过代码添加一个admob AdView。 ScrollView包含内容并在AdView初始化之前显示它。 问题是,当广告被显示时,ScrollView向下滚动广告的大小(高度)。我猜测因为ScrollView设置为height = match_parent以及= LinearLayout,当广告初始化时ScrollView会resize这就是导致滚动的原因(LinearLayout设置为与父底部对齐)。 有没有办法解决它? 我希望ScrollView保持与广告在屏幕上显示之前相同的滚动偏移。

设置AdMob横幅以通过XML匹配父宽度

我正在尝试设置AdMob横幅广告以匹配其父级宽度。 我试过样品: 得到了: 我也尝试过: ads:adSize=”SMART_BANNER” 在IDE xml预览中,我得到了: 但实际上广告与其父宽度不符。 任何人?

使用多种视图types在recyclerview中滚动到底部

我有一个包含多个项目的recyclerview。 和recyclerview有不同的视图types和不同的高度.. 所以这些是我尝试过的 recyclerview.scrollToPosition(adapterWrapper.getAdapter().getItemCount()-1); 和 app:layoutManager=”LinearLayoutManager” app:stackFromEnd=”true” 当我仅在单一视图types上应用它们时,它们对我很有用。但在多视图types中。 它不是滚动到底部。 它被困在底部之前的9个项目。 我stackFromBottom在listview中使用stackFromBottom并且工作正常.. 那么在recyclerview中它的解决方案是什么? 它实际上是一个聊天应用程序,具有不同types的布局,包括图像,GIF等。 RecyclerAdapter代码, package com.buckydroid.anonchat.Adapters; import android.app.Activity; import android.content.Context; import android.content.Intent; import android.net.Uri; import android.support.v7.widget.RecyclerView; import android.util.Log; import android.view.LayoutInflater; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.webkit.URLUtil; import android.widget.ImageView; import android.widget.PopupMenu; import android.widget.TextView; import android.widget.Toast; import com.buckydroid.anonchat.Async.DownloadManager; import com.buckydroid.anonchat.Chatroom.ChatRoom; import com.buckydroid.anonchat.Pages.FullScreenImageView; import com.buckydroid.anonchat.Pages.Profile; import […]

在刷新或登录google plus之前,AdMob不会显示横幅广告

我有一个问题。 我的AdMob已经设置了一段时间没有任何问题,但我注意到了一些错误。 广告成功加载(我看到来自ddms的消息),但它不会显示。 它将在定期60秒刷新后或当我打开登录google plus时显示。 问题仅发生在Google Play服务AdMob上,而不是AdMobSDK jar。 我转而使用AdMob jar,但我正在使用Google Play游戏服务获取排行榜和成就。 我怀疑问题是视图没有显示,或者设置不正确。 再次,广告将在60秒(以及广告刷新)等待后显示自己,或者当我启动谷歌播放服务的登录屏幕时。 我正在添加我的代码,同时我应该提到我已切换到新的AdMob网站,我再说一遍,如果我使用AdMob jar文件,那么问题就不会发生(广告会像正常情况一样在2-3秒内显示)。 我已经削减了谷歌游戏服务代码(它们不会影响这个问题,因为我已经尝试过没有它们的其他应用程序,问题仍然存在)。 MainActivity代码: public class MainActivity extends AndroidApplication { public static enum AdsStatus { SHOW_ADS, HIDE_ADS; } protected RelativeLayout layout; protected static AdView adMobView; public static class InnerHandler extends Handler { WeakReference mActivity; InnerHandler(MainActivityactivity) { mActivity = new WeakReference(activity); } @Override […]

admob AdView使用的WebViewCoreThread即使在父Activity暂停时也使用高CPU

我正在使用Google Admob SDK v6.1.0(https://developers.google.com/mobile-ads-sdk/download),并以编程方式(不是以XML格式)实例化com.google.ads.AdView,并添加它在我的Activity中动态地变成LinearLayout。 我的一位用户报告说,当他们在我的Activity中点击Home按钮时(为了显示它),他们开始看到来自我的应用程序的高CPU使用率。 我能够在Jellybean平台上重现这一点,并注意到高CPU使用率的来源是WebViewCoreThread。 我的Activity根本不使用任何WebView,但我能够逐步完成Activity的初始化,并注意到当我实例化AdMob AdView对象时,此WebViewCoreThread会启动。 作为AdMob引用中的状态,我在Activity的onDestroy()方法中调用此AdView上的destroy()。 我改变了我的代码,在我的onPause()方法中调用了AdView.onDestroy()。 但似乎没有任何因素导致WebViewCoreThread停止。 我猜,如果那个线程坚持下去,我没关系。 但是,如果我反复多次启动我的Activity,这个线程开始使用我的CPU的8到25%之间的任何地方,即使我的活动不在前台。 我注意到其他一些用户说你必须调用WebView.onPause()作为纠正措施。 (http://stackoverflow.com/questions/2040963/webview-threads-never-stop-webviewcorethread-cookiesyncmanager-http0-3)但这对我来说不是直接可行的,因为我的网页视图是由AdMob的AdView创建的。 我还改变了我的代码,调用.removeAllViews()来调用Admob AdView的容器LinearLayout对象,然后调用System.gc()来强制进行垃圾收集,但是似乎什么都没有杀死我的WebViewCoreThread并且最终它开始耗尽CPU直到我强行 – 杀了我的应用程序。 任何线索为什么AdMob这样做,以及我如何强制这个线程被杀死? 我附加了一个我创建的类来封装AdView的创建和销毁。 我在我的活动初始化中调用了这个类的getNewAd()方法。 我在Activity的onPause()和onDestroy()方法中调用了这个类的removeAd(): package com.shiprack.client; import com.google.ads.AdRequest; import com.google.ads.AdSize; import com.google.ads.AdView; import com.mobclix.android.sdk.Mobclix; import com.mobclix.android.sdk.MobclixMMABannerXLAdView; import android.app.Activity; import android.view.Gravity; import android.view.ViewGroup.LayoutParams; import android.widget.LinearLayout; public class AdManager { public AdManager(EventLog logger, LinearLayout container, Activity activity) { […]

Proguard找不到引用的com.google.ads.internal.state.AdState类

好吧,所以这会变得非常烦人,试图让我的项目在出口时工作/ Progaurd一直给我这个错误: Proguard returned with error code 1. See console 这是我在控制台中得到的完整错误: Warning: com.google.ads.m: can’t find referenced class com.google.ads.internal.state.AdState [2012-10-23 18:14:20 – com.fttech.monkey_toss.Menu] Warning: com.google.ads.m: can’t find referenced class com.google.ads.internal.state.AdState [2012-10-23 18:14:20 – com.fttech.monkey_toss.Menu] You should check if you need to specify additional program jars. [2012-10-23 18:14:20 – com.fttech.monkey_toss.Menu] Warning: there were 2 unresolved references to […]

多个dex文件定义Lcom / google / ads / AdRequest $ ErrorCode和多个dex文件定义Lcom / google / ads / AdRequest $ ErrorCode

我创建了android应用程序并尝试添加admob。 但它不起作用。 任何人都可以帮我修复此错误。 [2014-04-09 15:16:51 – Dex Loader] Unable to execute dex: Multiple dex files define Lcom/google/ads/AdRequest$ErrorCode; [2014-04-09 15:16:51 – Aurudhu_App] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/google/ads/AdRequest$ErrorCode; 这是应用程序架构。