Andriod中插入百度广告的使用

原创 2016年07月01日 09:45:00

对于广告平台来说,腾讯和百度应用的还是很多的,下面来介绍一下应用中插入百度广告的使用。首先要先到百度广告平台下载相关sdk文档和Demo。


1)把架包导入工程中,如图所示


2)添加相关权限

<uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.WRITE_SETTINGS"/>
    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
 <!-- 移动云 百度AppX SDK -->
    <activity android:name="com.baidu.appx.ui.BDInnerBrowser" />

    <receiver android:name="com.baidu.appx.app_download.CompleteReceiver" >
            <intent-filter>
                <action android:name="android.intent.action.DOWNLOAD_COMPLETE" />
                <action android:name="android.intent.action.DOWNLOAD_NOTIFICATION_CLICKED" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.PACKAGE_ADDED" />

                <data android:scheme="package" />
                <!-- 注意!! 这句必须要加,否则接收不到安装完成广播 -->
            </intent-filter>

        </receiver>     
        

2)开始使用

在MainActivity里

public class MainActivity extends Activity {
	// 百度广告初始化控件-横屏广告
	private RelativeLayout appxBannerContainer;
	private static BDBannerAd bannerAdView = null;

	// 百度插屏广告
	private Button button;
	private BDBannerAd bannerAdView1 = null;
	private BDInterstitialAd appxInterstitialAdView = null;

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

	private void initView() {
		appxBannerContainer = (RelativeLayout) findViewById(R.id.appx_banner_container);
		button = (Button) findViewById(R.id.button);
		bannerAdView = CpHelps.initCp(bannerAdView, appxBannerContainer,
				MainActivity.this);

		// 发布时请使用正确的ApiKey和广告位ID
		// 此处ApiKey和推广位ID均是测试用的
		// 您在正式提交应用的时候,请确认代码中已经更换为您应用对应的Key和ID
		// 具体获取方法请查阅《百度开发者中心交叉换量产品介绍.pdf》
		bannerAdView1 = new BDBannerAd(this,
				"CRqGC0MMbzpSLT2EYgDKk58d6ymsHylt", "TRwQxo62D74ULcY9TDRCjvno");
		appxInterstitialAdView = CpHelps.initInterCp(appxInterstitialAdView,
				bannerAdView1, MainActivity.this);
		button.setOnClickListener(new Button.OnClickListener() {

			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				// 展示插屏广告前先请先检查下广告是否加载完毕
				if (appxInterstitialAdView.isLoaded()) {
					appxInterstitialAdView.showAd();
				} else {
					appxInterstitialAdView.loadAd();
				}
			}
		});
	}

}
工具类如下:

public class CpHelps {

	public static BDBannerAd initCp(BDBannerAd bannerAdView,
			RelativeLayout appxBannerContainer, Context context) {

		// 创建广告视图
		// 发布时请使用正确的ApiKey和广告位ID
		// 此处ApiKey和推广位ID均是测试用的
		// 您在正式提交应用的时候,请确认代码中已经更换为您应用对应的Key和ID
		// 具体获取方法请查阅《百度开发者中心交叉换量产品介绍.pdf》
		bannerAdView = new BDBannerAd((Activity) context,
				"CRqGC0MMbzpSLT2EYgDKk58d6ymsHylt", "TRwQxo62D74ULcY9TDRCjvno");

		// 设置横幅广告展示尺寸,如不设置,默认为SIZE_FLEXIBLE;
		bannerAdView.setAdSize(BDBannerAd.SIZE_FLEXIBLE);

		// 设置横幅广告行为监听器
		bannerAdView.setAdListener(new BannerAdListener() {

			@Override
			public void onAdvertisementDataDidLoadFailure() {

			}

			@Override
			public void onAdvertisementDataDidLoadSuccess() {

			}

			@Override
			public void onAdvertisementViewDidClick() {
				// System.out.println("、、、、??我点击了广告;;;;;、、、、、");

			}

			@Override
			public void onAdvertisementViewDidShow() {

			}

			@Override
			public void onAdvertisementViewWillStartNewIntent() {

			}
		});

		// 显示广告视图
		appxBannerContainer.addView(bannerAdView);
		return bannerAdView;
	}

	public static BDInterstitialAd initInterCp(
			BDInterstitialAd appxInterstitialAdView, BDBannerAd bannerAdView,
			Context context) {

		// 创建广告视图
		// 发布时请使用正确的ApiKey和广告位ID
		// 此处ApiKey和推广位ID均是测试用的
		// 您在正式提交应用的时候,请确认代码中已经更换为您应用对应的Key和ID
		// 具体获取方法请查阅《百度开发者中心交叉换量产品介绍.pdf》
		appxInterstitialAdView = new BDInterstitialAd((Activity) context,
				"CRqGC0MMbzpSLT2EYgDKk58d6ymsHylt", "TRwQxo62D74ULcY9TDRCjvno");

		// 设置插屏广告行为监听器
		appxInterstitialAdView.setAdListener(new InterstitialAdListener() {

			@Override
			public void onAdvertisementDataDidLoadFailure() {

			}

			@Override
			public void onAdvertisementDataDidLoadSuccess() {

			}

			@Override
			public void onAdvertisementViewDidClick() {

			}

			@Override
			public void onAdvertisementViewDidHide() {

			}

			@Override
			public void onAdvertisementViewDidShow() {

			}

			@Override
			public void onAdvertisementViewWillStartNewIntent() {

			}

		});

		bannerAdView.setOnKeyListener(new OnKeyListener() {

			@Override
			public boolean onKey(View v, int keyCode, KeyEvent event) {
				// TODO Auto-generated method stub
				return true;
			}
		});
		// 加载广告
		appxInterstitialAdView.loadAd();
		return appxInterstitialAdView;

	}
}
布局文件如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <RelativeLayout
        android:id="@+id/appx_banner_container"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginBottom="8dp"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="10dp"
        android:gravity="center" />

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="10dp"
        android:background="@null"
        android:text="点击出现插屏"
        android:textColor="#ff0000"
        android:textSize="20sp" />

</LinearLayout>

需要注意的就是,发布时请使用正确的ApiKey和广告位ID,就是你自己或者公司在百度广告平台申请的ApiKey和广告位ID




版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Unity接入百度广告教程android篇

Unity 游戏里面接入百度,admob之类的广告来增加游戏的赢利是常用的增加收入的方法之一。 下面是我通过c#的方式在unity游戏里面接入百度移动广告的过程 先下载百度移动广告SDK插件 gith...
  • zxc1243
  • zxc1243
  • 2016年02月18日 17:54
  • 525

【android-tips】如何在android应用中插入百度广告(附源码)

(转载请注明出处:http://blog.csdn.net/buptgshengod) 1.介绍    现在游戏中的广告基本上已经成为了游戏创作者的一个重要的收入来源。其实插入广告还是挺简单的,本文选...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

加入百度移动联盟广告SSP美图android安卓源码 详情有演示apk

演示apk: 链接:http://pan.baidu.com/s/1o7KJQem 把ID号改成你的就行了。 百度移动广告androidSDK及说明书BaiduMobAds_MSSP_bd...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

cocos2d-x 植入广告(一) 百度横屏、插屏广告

今天尝试了一下 有米、芒果 平台的广告植入,觉得和之前植入百度平台广告的方式不太一样。回想自己在这上面也算是花费了不少时间,现在就把植入广告的过程记录下来,算是对植入广告方式的总结。 【准备...

用Bmob实现用户数据添加和查询显示

我用的例子利用Bmob云服务器实现了让用户上传待出售商品信息,以及能浏览在售商品信息的小功能。刚接触Bmob感觉它确实好用,但我不得不吐槽那个案例更新的太慢了,新版本的SDK跟老版本还是有很大差别的,...

Android Fragment详解(二):Fragment创建及其生命周期

Fragments的生命周期      每一个fragments 都有自己的一套生命周期回调方法和处理自己的用户输入事件。 对应生命周期可参考下图: 创建片元(Creating a Frag...
  • t12x3456
  • t12x3456
  • 2012年10月23日 21:17
  • 64654

Andriod中插入腾讯广告的使用

上一段时间的时候,看了广告的使用,目前的广告平台有很多,主要看了下百度广告和腾讯广告的使用,这里主要介绍腾讯广告的开屏广告和插屏广告的简单使用。 首先要做准备工作 1)去腾讯广告平台注册帐号,下载...

安卓Andriod使用入门(二十三)【百度地图API】

人总是珍惜未得到的,而遗忘了所拥有的。项目结构图:AndroidManifest.xml: ...
  • WuLex
  • WuLex
  • 2016年11月27日 00:04
  • 427
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Andriod中插入百度广告的使用
举报原因:
原因补充:

(最多只允许输入30个字)