- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
将 admob 添加到我的 xml 时,会导致 fatal error ,从而导致应用程序崩溃。
我在/libs 中正确添加了 admob jar 并构建路径。
xml 看起来像这样
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="right" >
<com.google.ads.AdView
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adUnitId="#######"
ads:adSize="BANNER"
ads:testDevices="######"
ads:loadAdOnCreate="true"/> </RelativeLayout>
这里是logcat
07-29 00:39:59.113: E/Ads(8849): Could not initialize AdView: AdView was initialized with a Context that wasn't an Activity. 07-29 00:39:59.113: E/Ads(8849): Could not initialize AdView: AdView was initialized with a Context that wasn't an Activity. 07-29 00:39:59.113: W/dalvikvm(8849): threadid=1: thread exiting with uncaught exception (group=0x40da9390) 07-29 00:39:59.133: E/AndroidRuntime(8849): FATAL EXCEPTION: main 07-29 00:39:59.133: E/AndroidRuntime(8849): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.clickvote.app/com.clickvote.app.WebViewActivity}: android.view.InflateException: Binary XML file line #7: Error inflating class com.google.ads.AdView 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2355) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2391) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.app.ActivityThread.access$600(ActivityThread.java:151) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1335) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.os.Handler.dispatchMessage(Handler.java:99) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.os.Looper.loop(Looper.java:155) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.app.ActivityThread.main(ActivityThread.java:5511) 07-29 00:39:59.133: E/AndroidRuntime(8849): at java.lang.reflect.Method.invokeNative(Native Method) 07-29 00:39:59.133: E/AndroidRuntime(8849): at java.lang.reflect.Method.invoke(Method.java:511) 07-29 00:39:59.133: E/AndroidRuntime(8849): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1029) 07-29 00:39:59.133: E/AndroidRuntime(8849): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:796) 07-29 00:39:59.133: E/AndroidRuntime(8849): at dalvik.system.NativeStart.main(Native Method) 07-29 00:39:59.133: E/AndroidRuntime(8849): Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class com.google.ads.AdView 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.view.LayoutInflater.createView(LayoutInflater.java:613) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.view.LayoutInflater.rInflate(LayoutInflater.java:746) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.view.LayoutInflater.inflate(LayoutInflater.java:489) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.view.LayoutInflater.inflate(LayoutInflater.java:396) 07-29 00:39:59.133: E/AndroidRuntime(8849): at com.android.internal.app.ActionBarImpl.setCustomView(ActionBarImpl.java:310) 07-29 00:39:59.133: E/AndroidRuntime(8849): at com.clickvote.app.WebViewActivity.onCreate(WebViewActivity.java:45) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.app.Activity.performCreate(Activity.java:5066) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1101) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2311) 07-29 00:39:59.133: E/AndroidRuntime(8849): ... 11 more 07-29 00:39:59.133: E/AndroidRuntime(8849): Caused by: java.lang.reflect.InvocationTargetException 07-29 00:39:59.133: E/AndroidRuntime(8849): at java.lang.reflect.Constructor.constructNative(Native Method) 07-29 00:39:59.133: E/AndroidRuntime(8849): at java.lang.reflect.Constructor.newInstance(Constructor.java:417) 07-29 00:39:59.133: E/AndroidRuntime(8849): at android.view.LayoutInflater.createView(LayoutInflater.java:587) 07-29 00:39:59.133: E/AndroidRuntime(8849): ... 20 more 07-29 00:39:59.133: E/AndroidRuntime(8849): Caused by: java.lang.RuntimeException: Could not initialize AdView: AdView was initialized with a Context that wasn't an Activity. 07-29 00:39:59.133: E/AndroidRuntime(8849): at com.google.ads.AdView.a(SourceFile:402) 07-29 00:39:59.133: E/AndroidRuntime(8849): at com.google.ads.AdView.(SourceFile:125) 07-29 00:39:59.133: E/AndroidRuntime(8849): ... 23 more 07-29 00:39:59.133: E/AndroidRuntime(8849): Caused by: com.google.ads.internal.b: AdView was initialized with a Context that wasn't an Activity. 07-29 00:39:59.133: E/AndroidRuntime(8849): at com.google.ads.AdView.a(SourceFile:389) 07-29 00:39:59.133: E/AndroidRuntime(8849): ... 24 more
最佳答案
好的,根据您的评论,我将发布之前的建议作为带有一些示例代码的答案,因为正如您所指出的,您对 Android 还很陌生。
您当前的代码:
public class WebViewActivity extends DroidGap {
public static String LOG_TAG = "name";
private Dialog mLoadingDialog;
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getActionBar().setCustomView(R.layout.ab); // <-- !!
getActionBar().setDisplayShowCustomEnabled(true);
getActionBar().setDisplayShowHomeEnabled(false);
}
}
基本上,您应该尝试重写上面指出的行。不要将自定义 View 膨胀委托(delegate)给 ActionBar
,而是自行膨胀以确保使用 Activity
上下文。就像这样:
public class WebViewActivity extends DroidGap {
public static String LOG_TAG = "name";
private Dialog mLoadingDialog;
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
View customActionBarView = getLayoutInflater().inflate(R.layout.ab, null, false);
getActionBar().setCustomView(customActionBarView);
getActionBar().setDisplayShowCustomEnabled(true);
getActionBar().setDisplayShowHomeEnabled(false);
}
}
这应该(可能)消除您当前看到的异常。我没有验证或尝试运行上面的代码 fragment ,因此请注意任何拼写错误。如果您在此之后仍然遇到同样的问题,请轻推我,我会仔细看看。
关于java - Admob 6.4.1 - 膨胀类 com.google.ads.AdView 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17914355/
我正在尝试将 Google Admob 合并到我的 android 应用程序中。我已按照 https://developers.google.com/admob/android/quick-start
我有一个画廊应用程序,有一些类别:动物,花卉......我创建了一个 Activity 的每个画廊,所有画廊中的这个 Activity 具有相同的内容: onCreate: tSpeak = new
我正在尝试在我的 Activity 中通过 admob 制作广告,它工作正常,但在移动一些东西后,我出现了这个错误。 代码如下:第一次遇到这种情况,重启eclipse也没用。 java.lang.Cl
我正在开发一个 Android 应用程序,但在我添加 AdView 后它显示错误 Error:(23, 31) No resource found that matches the given nam
我在我的应用程序中使用 adview 来测试某些健康状况,但显示的广告与状况或健康问题完全无关。由于制药和健康行业的广告很多,我确信应该有“匹配”的广告——我的应用程序似乎没有调用它们! 有没有办法“
我有一个带有 View 和导航栏的导航 Controller 。 我想在导航栏和 View 之间插入一个 AdView(我正在使用 AdWhirl)。 AdView 应该向下滑动并将 View 向下推
我试图在执行 Activity 时在 AdsView 下方放置一个按钮 - download_btn。
我正在尝试将 AdView 放在我的应用程序的底部。但是,当我测试我的应用时,我没有看到广告,也没有看到 AdView。 在我的 MainActivity 中,我用 2 个 fragment 替换 2
我有: @Override public void onActivityCreated( Bundle bundle ) { super.onActivityC
我想在我的应用程序中包含一个 admob 横幅,但我遇到了这个奇怪的错误。非常感谢任何帮助。 这是xml代码 在 Activity 中,我写了如下代码 adview = (AdView)findVi
我有一个 Surfaceview 和一个 AdView,我是这样画 Adview 的: g=new GameView(this ); setContentView(R.layout.a
我的应用程序有一些“GameOver” Activity ,游戏结束时会调用该 Activity 。此 Activity 包含它自己的 AdView。现在我的问题是,每次玩家输掉游戏并且调用此 Act
我想在这个适配器的第二个位置添加一个广告 View 。我必须为此改变什么?在过去的两个小时里,我尝试了很多。我可以在加载列表后插入吗? 这是我的适配器代码: public class FeedsAda
在 XML 布局中,一切看起来都很完美。当我使用模拟器或真实设备时,adView不可见。我尝试为 adView 设置高度,例如 200 dp。然后 adView 就可见了。但是,当我为 adView
我在我的应用程序中使用了一个广告 View ,想知道何时有人点击了该广告 View !我该怎么做?onclicklistener 似乎不起作用。 最佳答案 你可以这样设置监听器: adView.set
我在 Layout 的 XML 中定义了一个 AdView,如果用户购买了应用程序的无广告版本,我想让它消失。 我在做的是 if(userhaspurchased){ if (mAdView
我正在使用 AdView 和 LeakCanary。承载 adView 的 Fragment 在 onDestroy 中调用 adView.destroy(),但 LeakCanary 显示承载该 F
我是 Android 开发的初学者。我刚刚发布了一个应用程序,但发现了一些问题,因此我想通过创建一个新的 Android 项目来纠正这些问题,该项目的包名称与已发布的应用程序的包名称相同。但是,一旦我
我想在我的应用程序中添加 AdMob,但在我的应用程序中找不到 AdView 类 build.gradle ... dependencies { api ('com.google.android
我最近在我的应用程序中添加了一个广告 View 。但dint对admob一无所知。我收到错误,因为我没有将其与 admobId 链接。所以我从布局中删除了广告 View 。但同样的错误又来了。我认为
我是一名优秀的程序员,十分优秀!