`
weiyinchao88
  • 浏览: 1234262 次
文章分类
社区版块
存档分类
最新评论

Android应用开发-小巫CSDN博客客户端之嵌入有米广告

 
阅读更多
Android应用开发-小巫CSDN博客客户端之嵌入有米广告

上一篇博客给大家介绍如何集成友盟社会化组件,本篇继续带来干货,教大家如何嵌入广告到应用中去。小巫自称专业对接30年,熟悉各大渠道SDK的接入和使用,除非渠道提供的SDK很坑,不然只需要不到半个小时的时间就可以把SDK接入到应用当中。关于广告,是开发者比较关注的话题,为什么要嵌入广告呢,自然是为了为自己的辛苦劳作得到些许额外的收益,因为在国内除非做IOS付费软件,不然在Android平台下做收费软件是很难获得收益的,用户只想用看起来好用并且免费的东西,嵌入广告是唯一能行得通的办法,只要不会太离谱就行。
广告服务商很多,比如有米、点金、多盟、广点通等等,开发者可以选择口碑比较好,能为开发者带来较好的收益的广告渠道。
笔者这里选择了有米作为实验点,提供一个参考给大家,废话不多说,先来看看小巫CSDN博客客户端现在的收益:


有木有看到收入啊,囧,很抱歉这点收入,小巫这个客户端的广告隐藏得很深,用户也不是很多,所以就暂时就只有这点啦。

同样的,下面是有米广告的集成过程:
到有米广告官网注册帐号,在管理中心创建应用获取到发布ID和应用密钥:

创建完应用之后,下载SDK并且解压缩,得到如下文件夹和文件:

demo对应相应的示例项目,开发者可以通过这些示例项目,可以快速实现集成SDK。
doc对应开发文档
libs对应集成时需要的库
说实在集成SDK并没有什么技术含量,只要你按照渠道提供的开发文档,自己试一遍,基本上就没有什么疑惑了。

有米给我们提供了以下几种广告类型:
  • 广告条,也称横幅
  • 插屏广告
  • 积分墙广告

然而横幅广告有两种形式,一种是以XML形式布局,另一种是以代码形式布局。


配置有米权限:
    <!-- 有米广告配置权限 -->
    <!-- 配置权限 -->
    <uses-permission android:name="android.permission.INTERNET" />
    <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" />
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
    <uses-permission android:name="android.permission.GET_TASKS" />
    <!-- 以下为可选权限 -->
    <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />


有米必要的配置:
 <!-- 有米广告必须添加的组件 -->
        <!-- 添加必须的组件 -->
        <activity
            android:name="net.youmi.android.AdBrowser"
            android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
            android:theme="@android:style/Theme.Light.NoTitleBar" >
        </activity>

        <service
            android:name="net.youmi.android.AdService"
            android:exported="false" >
        </service>

        <receiver android:name="net.youmi.android.AdReceiver" >
            <intent-filter>
                <action android:name="android.intent.action.PACKAGE_ADDED" />

                <data android:scheme="package" />
            </intent-filter>
        </receiver>

        <!-- 有米渠道号(可选配置) 渠道号不能带空格,类型为整数 -->
        <meta-data
            android:name="YOUMI_CHANNEL"
            android:value="0" >
        </meta-data>


有米广告初始化:
// 初始化应用的发布 ID 和密钥,以及设置测试模式
        AdManager.getInstance(this).init("您的应用发布ID", "您的应用密钥", false);

小巫的博客客户端至集成了广告条和插屏广告,效果如下:



代码中的实现:
/**
	 * 初始化广告
	 * 
	 * @param view
	 */
	public void initAd(View view) {
		// 初始化接口,应用启动的时候调用
		// 参数:appId, appSecret, 调试模式
		AdManager.getInstance(getActivity()).init("8df70b90ebf86823",
				"b7659d08439c052b", false);
		// // 广告条接口调用(适用于应用)
		// // 将广告条adView添加到需要展示的layout控件中
		// LinearLayout adLayout = (LinearLayout)
		// view.findViewById(R.id.adLayout);
		// AdView adView = new AdView(getActivity(), AdSize.FIT_SCREEN);
		// adLayout.addView(adView);

		// 普通布局,适用于应用
		// 获取要嵌入迷你广告条的布局
		RelativeLayout adLayout = (RelativeLayout) view
				.findViewById(R.id.adLayout);
		// demo 1 迷你Banner : 宽满屏,高32dp
		DiyBanner banner = new DiyBanner(getActivity(),
				DiyAdSize.SIZE_MATCH_SCREENx32);// 传入高度为32dp的AdSize来定义迷你Banner
		// demo 2 迷你Banner : 宽320dp,高32dp
		// DiyBanner banner = new DiyBanner(this,
		// DiyAdSize.SIZE_320x32);//传入高度为32dp的AdSize来定义迷你Banner
		// 将积分Banner加入到布局中
		adLayout.addView(banner);

		// 监听广告条接口
		// adView.setAdListener(new AdViewListener() {
		//
		// @Override
		// public void onSwitchedAd(AdView arg0) {
		// Log.i("YoumiAdDemo", "广告条切换");
		// }
		//
		// @Override
		// public void onReceivedAd(AdView arg0) {
		// Log.i("YoumiAdDemo", "请求广告成功");
		// }
		//
		// @Override
		// public void onFailedToReceivedAd(AdView arg0) {
		// Log.i("YoumiAdDemo", "请求广告失败");
		// }
		// });

		// 插播接口调用
		// 开发者可以到开发者后台设置展示频率,需要到开发者后台设置页面(详细信息->业务信息->无积分广告业务->高级设置)
		// 自4.03版本增加云控制是否开启防误点功能,需要到开发者后台设置页面(详细信息->业务信息->无积分广告业务->高级设置)

		// 加载插播资源
		SpotManager.getInstance(getActivity()).loadSpotAds();
		// 设置展示超时时间,加载超时则不展示广告,默认0,代表不设置超时时间
		SpotManager.getInstance(getActivity()).setSpotTimeout(5000);// 设置5秒
		SpotManager.getInstance(getActivity()).setShowInterval(20);// 设置20秒的显示时间间隔
		// 如需要使用自动关闭插屏功能,请取消注释下面方法
		SpotManager.getInstance(getActivity()).setAutoCloseSpot(true);// 设置自动关闭插屏开关
		SpotManager.getInstance(getActivity()).setCloseTime(6000); // 设置关闭插屏时间

	}



展示插屏广告的代码:
// 展示插播广告,可以不调用loadSpot独立使用
			SpotManager.getInstance(getActivity()).showSpotAds(getActivity(),
					new SpotDialogListener() {
						@Override
						public void onShowSuccess() {
							Log.i("YoumiAdDemo", "展示成功");
						}

						@Override
						public void onShowFailed() {
							Log.i("YoumiAdDemo", "展示失败");
						}

					});




声明周期中的插屏广告的处理:
	@Override
	public void onStop() {
		// 如果不调用此方法,则按home键的时候会出现图标无法显示的情况。
		SpotManager.getInstance(getActivity()).disMiss(false);
		super.onStop();
	}

	@Override
	public void onDestroy() {
		// 取消注册监听
		SpotManager.getInstance(getActivity()).unregisterSceenReceiver();
		super.onDestroy();
	}

以上就是关于嵌入有米广告的过程,如何长正式产生收益呢,需要应用审核通过呈运行状态,就开始计费了。只要你的应用做得足够吸引人,我想用户也不介意多点几下作为汇报,看看Flappy Bird就是一个很好的例子了。


下一篇博文预告是,如何用ListView呈现文章详细内容,谢谢朋友们的耐心阅读,你的支持是小巫的无限动力。






分享到:
评论

相关推荐

    CSDN-Blog-Client, 小巫CSDN博客客户端,CSDN人气博主——小巫的倾情之作。.zip

    CSDN-Blog-Client, 小巫CSDN博客客户端,CSDN人气博主——小巫的倾情之作。

    小巫CSDN博客客户端源码

    本文将深入剖析“小巫CSDN博客客户端源码”,帮助读者理解Android应用开发的基本原理,特别是针对CSDN博客接口的调用与模拟客户端的实现。 首先,"小巫CSDN博客客户端源码"是一个基于Eclipse开发的项目,这表明它是...

    Android小巫CSDN博客客户端源码

    【Android小巫CSDN博客客户端源码】是一款基于Android平台的应用程序,旨在为用户提供一个方便的途径来阅读和浏览CSDN博客上的文章。这个源码是开发者小巫分享的,供其他开发者学习和参考,以提升Android开发技能。 ...

    Android开发小巫新闻客户端.zip_Android开发新闻客户端_android 新闻_小巫_新闻app_新闻客户端

    综上所述,【Android开发小巫新闻客户端】项目涵盖了Android应用开发的多个核心领域,涉及了从UI设计到网络请求、数据处理、性能优化等一系列技术点。通过这个项目,开发者不仅可以提升Android开发技能,还能深入...

    Android应用--简、美音乐播放器原型放送(作者:小巫) - 巫_1曲待续

    Android应用--简、美音乐播放器原型放送(作者:小巫) - 巫_1曲待续 Android应用--简、美音乐播放器原型放送(作者:小巫) - 巫_1曲待续

    Android应用--简、美音乐播放器开发项目

    1. **Android SDK**:Android应用开发的基础是Android Software Development Kit (SDK),它包含了开发、测试和调试Android应用所需的所有工具。开发者需要熟悉Android Studio,这是一个集成开发环境(IDE),提供了...

    小巫新闻客户端开发说明书

    小巫新闻客户端的开发涵盖了移动应用开发的多个重要环节,包括界面设计、网络通信、数据解析、数据库操作以及用户体验优化。通过这样的项目,开发者能够全面了解并掌握Android应用开发的流程和技术栈,同时也展示了...

    小巫新闻客户端完整源代码

    这个项目对于学习移动应用开发,尤其是对Android或iOS平台有兴趣的开发者来说,是一份宝贵的参考资料。小巫博主在编程社区中以分享技术知识著称,而这个项目则为开发者提供了一个实际的、可操作的学习平台,让人们...

    小巫新闻客户端底部菜单实现

    总的来说,"小巫新闻客户端底部菜单实现"是一个学习Android应用开发中底部导航菜单的好资源,可以帮助开发者掌握这一常见UI组件的使用。通过阅读和分析源代码,可以深入了解`BottomNavigationView`的工作原理,以及...

    参考代码:多线程断点续传下载---小巫的

    这是我的博客参考的代码,我一并上传,大家参考起来比较方便,同时不要积分,互相借鉴! 我的博客链接:http://blog.csdn.net/u012320459/article/details/47373893

    小巫新闻客户端开发(项目源代码+服务端代码+数据库文件)

    小巫新闻客户端开发所有文件,项目源代码+服务端代码+数据库文件

    程序员上班刷题-A-week-to-develop-android-app-plan:一周开发AndroidApp计划

    A-week-to-develop-android-app-plan 一周开发Android App计划 ##首批参与成员 -小巫 -墨香 -梦痕 -边城刀客 -徐cc ##要求 -每位认领者按照开源规范来做,代码规范和Android开发规范 -每位认领者必须拥有github账号...

    一个android app

    《Android应用开发详解》 Android App,作为全球最受欢迎的移动操作系统平台之一,为开发者提供了丰富的功能和无限的创新可能。Android应用通常由一系列组件构成,包括活动(Activity)、服务(Service)、广播接收...

    Android游戏-疯狂连连看

    【Android游戏开发基础】 在Android平台上开发游戏,如“疯狂连连看”,首先需要掌握的是Java语言,因为Android SDK主要使用Java作为开发语言。对于初学者,理解面向对象编程的概念,如类、对象、继承、多态等是必...

    Android-侧滑菜单SlidingMen程序文件

    在Android应用开发中,侧滑菜单(Sliding Menu)是一种常见的设计模式,它允许用户通过从屏幕边缘向内滑动来展示或隐藏一个侧边栏,通常包含导航选项或者设置等。这种设计使得用户能够在不离开当前界面的情况下访问...

    Android第三方开源框架ImageLoader的完美Demo

    在Android应用开发中,图片加载是一个非常重要的环节,特别是在处理大量图片或者网络图片时,高效、内存友好的图片加载框架显得尤为关键。`ImageLoader`就是这样一个被广泛使用的第三方开源框架,它为开发者提供了...

    Android自定义日期选择器源码

    通过阅读博客和查看提供的DateTimePicker源码,我们可以学习到如何将理论知识转化为实际应用,进一步提升Android开发能力。 总的来说,自定义日期选择器是Android开发中的一个重要实践,它涉及到了Android UI设计、...

Global site tag (gtag.js) - Google Analytics