你好我是android dev和admob的新手.我正在尝试使用按钮,几页和底部的admob制作一个简单的测试应用程序.一切正常,直到我尝试实现admob.这是我的代码:
HelloAndroid.java:
package com.manny.HelloAndroid;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
public class HelloAndroid extends Activity {
/** Called when the activity is first created. */
private static final int ACTIVITY_CREATE = 0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ImageView image = (ImageView) findViewById(R.id.test_image);
//image.setScaleType(ImageView.ScaleType.FIT_XY);
}
public void onClick(View v){
Intent i = new Intent(this, HelloPage2.class);
startActivityForResult(i, ACTIVITY_CREATE);
}
}
Run Code Online (Sandbox Code Playgroud)
main.xml中:
<?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:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/test_image"
android:src="@drawable/bak_vert_480x800" …Run Code Online (Sandbox Code Playgroud) 我想在android studio中添加我的Android应用程序中的admob.我几乎在那里,但我得到的错误:
Namespace 'ads' not bound
Run Code Online (Sandbox Code Playgroud)
这也是我的广告xml:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<com.google.ads.AdView android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adUnitId="MY_AD_UNIT_ID"
ads:adSize="BANNER"
ads:testDevices="TEST_EMULATOR, TEST_DEVICE_ID"
ads:loadAdOnCreate="true"/>
<TextView
android:id="@+id/beerTitle"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:ems="10"
android:textSize="20sp"
android:textStyle = "bold"
android:padding="5dip"
>
</TextView>
<ImageView android:id="@+id/image"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:layout_margin="10dip"/>
<TableLayout
android:id="@+id/tableLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal"
android:shrinkColumns="*"
android:stretchColumns="*">
<TableRow
android:id="@+id/tableStatTitles"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dip" >
<TextView
android:id="@+id/abvTitle"
android:text="ABV"
android:gravity="center"
android:textStyle = "bold"
android:textSize="20sp"
android:layout_weight="1"
></TextView>
<TextView
android:id="@+id/IBUTitle"
android:text="IBU"
android:gravity="center"
android:textStyle = "bold"
android:textSize="20sp"
android:layout_weight="1"
></TextView>
<TextView …Run Code Online (Sandbox Code Playgroud) 我希望有人可以提供相关信息.我使用Admob显示插页式广告.他们中的一些人有音乐或声音,因此我的用户对此感到非常恼火.那么,有没有人知道是否有办法阻止音乐或声音广告?无论如何拒绝接听广告的扬声器?谢谢
可能重复:
如何获取Admob的设备ID
我正在我的Android设备上测试adMob并跟随文档,我正在尝试让设备ID执行adRequest.但是,我无法在logCat中找到设备ID!我做错了什么?
AdRequest adRequest = new AdRequest();
adRequest.addTestDevice(AdRequest.TEST_EMULATOR);
adRequest.addTestDevice("test");
Run Code Online (Sandbox Code Playgroud)
编辑:它不是重复,其他帖子的那些方法对我不起作用.
我使用以下代码来显示用于admob测试应用程序的唯一标识符.
这是我的applicationDidFinishLaunching ...
// Print IDFA (from AdSupport Framework) for iOS 6 and UDID for iOS < 6.
if (NSClassFromString(@"ASIdentifierManager")) {
NSLog(@"GoogleAdMobAdsSDK ID for testing: %@" ,
[[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString]);
} else {
NSLog(@"GoogleAdMobAdsSDK ID for testing: %@" ,
[[UIDevice currentDevice] uniqueIdentifier]);
}
Run Code Online (Sandbox Code Playgroud)
构建'使用未声明的标识符:ASIdentifierManager'时出错
我链接了AdSupport框架,可以访问声明标识符管理器的文件,但它仍然无法识别?
我已经清理了build文件夹,重启了xCode相同的结果.
作为MH.在这个问题中指出,如果他们包含Google Play服务,则不再需要在他们的Android项目中包含GoogleAdMobAdsSdk-xxxjar(请参阅迁移指南).但是,我想,而且我遇到了麻烦.
问题是:google-play-services_lib项目包含一个com.google.ads.AdRequest不推荐使用的定义,并且有一个私有构造函数.它最终出现在AdMob jar前面的类路径中(在"Android Private Libraries"条目中),所以当我尝试在我的代码中使用它时,它最终会尝试使用已弃用的,导致错误:The constructor AdRequest() is not visible.我认为没有办法重新订购"Android私人图书馆"中的条目.
你问我为什么要同时使用这两种?我有一个包含许多有用类的库项目,包括一些用于处理Play服务和AdMob的实用程序类.我使用该库项目的一些应用程序使用AdMob实用程序类,但不使用Play服务.
自上周以来,由于一些 admob 错误,我在生产版本的应用程序中遇到了致命错误
Fatal Exception: java.lang.NullPointerException: Attempt to read from field 'com.google.android.gms.ads.internal.overlay.n com.google.android.gms.ads.internal.overlay.AdOverlayInfoParcel.c' on a null object reference
at com.google.android.gms.ads.internal.overlay.k.f(k.java)
at com.google.android.gms.ads.internal.overlay.client.b.a(b.java:1)
at fy.onTransact(fy.java:4)
at android.os.Binder.transact(Binder.java:662)
at com.google.android.gms.internal.ads.zzgu.zzb(zzgu.java:21)
at com.google.android.gms.internal.ads.zzarl.onUserLeaveHint(zzarl.java:54)
at com.google.android.gms.ads.AdActivity.onUserLeaveHint(AdActivity.java:32)
at android.app.Activity.performUserLeaving(Activity.java:7470)
at android.app.Instrumentation.callActivityOnUserLeaving(Instrumentation.java:1476)
at android.app.ActivityThread.performUserLeavingActivity(ActivityThread.java:4034)
at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:4016)
at android.app.servertransaction.PauseActivityItem.execute(PauseActivityItem.java:45)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1839)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:201)
at android.app.ActivityThread.main(ActivityThread.java:6864)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873)
Run Code Online (Sandbox Code Playgroud)
我无法在测试中重现该问题。但正如堆栈显示的那样,它是由于响应 android 本机事件的 admob api 的一些内部调用引起的。
我正在使用的版本:
'com.google.gms:google-services:4.3.4'
api "com.google.android.gms:play-services-location:17.1.0"
api 'com.google.android.gms:play-services-ads:19.5.0'
Run Code Online (Sandbox Code Playgroud) 我只是想知道这个问题是否是服务器端...或者我必须在我的代码中修复一些问题...
onFailedToReceiveAd(广告请求成功,但由于缺少广告资源而未返回广告
我正在使用adob与adwhirl在我的Android应用程序中显示广告.
我正在尝试将admob广告合并到我的应用中.到目前为止,我已经在我的应用程序的主要活动的onCreate方法中添加了以下代码...
adView = new AdView(this,AdSize.BANNER,"my code number");
adView.loadAd(new AdRequest());
Run Code Online (Sandbox Code Playgroud)
程序编译没有错误,但在运行时我收到消息java.lang.NoClassDefFoundError: com.google.ads.AdView.我已经看到了问题的解释和解决方法,但是我看不出它是如何适用于我的项目的,因为我的项目中没有"lib"或"libs"目录.
根据eclipse的SDK管理器,我拥有我使用的所有内容的最新版本.
我正在尝试向我的应用程序添加一个admob横幅但不幸的是,在完成Google文档的所有步骤之后,我仍然在logcat中找到了这个警告"找不到com.google.android.gms.ads.adactivity",并在admob的标语中显示此消息" Android: configChanges在AndroidManifest中缺少adActivity . xml"虽然我Android: configChanges在AndroidManifest.xml中添加了它
这是我的manifest.xml
<activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
Run Code Online (Sandbox Code Playgroud)
我真的需要你的帮助