是男人就下100层【第五层】——2048游戏从源码到发布市场

上一篇《是男人就下100层【第五层】——换肤版2048游戏》中阳光小强对2048游戏用自己的方式进行了实现,并分享了核心源码,这一篇阳光小强打算将该项目的所有源代码公开并结合这个实例在这篇文章中介绍一下如何添加广告和实现分享功能。

最终运行效果如下(更多运行效果请看《是男人就下100层【第五层】——换肤版2048游戏》):


一、如何实现换肤

换肤的思路其实很简单,在ActionBar中添加菜单,当用户选择某一个皮肤后就将当前的皮肤状态修改并保存到SharedPreference中,以便后面启动后直接读取皮肤,创建该皮肤的Bitmap对象并在onDraw中绘制。

	private void changeSkin(int skin) {
		Editor edit = sharedPreference.edit();
		edit.putInt("skin", skin);
		edit.commit();
		my2048View.changeSkin(skin);
	}
	public void changeSkin(int skin){
		this.skin = skin;
		switch (skin) {
		case 0:
			for(int i=0; i<bitmaps.length; i++){
				bitmaps[i] = null;
			}
			for(int i=0; i<bitmaps_skin3.length; i++){
				bitmaps_skin3[i] = null;
			}
			break;
		case 1:
			for(int i=0; i<bitmaps_skin3.length; i++){
				bitmaps_skin3[i] = null;
			}
			initBitmap();
			break;
		case 2:
			for(int i=0; i<bitmaps.length; i++){
				bitmaps[i] = null;
			}
			initBitmap();
			break;
		}
		invalidate();
	}

二、如何添加广告

在添加广告之前有些朋友可能就会问了,什么广告平台比较好?这个问题的答案其实我也不知道,在这之前阳光小强从来没有在app中添加过广告,这次只是尝试,就先用了有米的广告,最后又换成了聚米的广告(个人觉得聚米的广告收益稍高)。

其实各种平台的广告集成方式基本类似,下面就看看聚米的广告如何集成吧:

我第一次选择的官方统一PUSH包,集成后发现360很容易检测出来,后来又换成了自定义PUSH的方式(官方文档很详细:http://www.adjumi.com/AppDevPlat/Page/SDKSm.aspx),我这里就不一步步的解释了。

最后记得开启广告:

接下来做的事情就很简单了,隔一段时间看看自己的收益吧

三、如何添加分享功能

分享功能实现的方式大概有两种,一种是通过启动系统的分析组件(界面不好修改,不易控制),另一种是用第三方的分析组件(容易自定义,界面美观,推荐)。

第一种方法实现如下:

			@Override
			public void onClick(View arg0) {
				/*my2048View.saveMaxScore();
				Intent intent=new Intent(Intent.ACTION_SEND);
                intent.setType("image/*");
                intent.putExtra(Intent.EXTRA_SUBJECT, "LOL版2048");
               // intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File("android:resource://com.example.my2048/"+R.raw.share_img)));
                intent.putExtra(Intent.EXTRA_TEXT, "我的最高纪录是"+ sharedPreference.getInt("maxScore", 0) +"分,赶快来玩吧,LOL版2048好玩!有木有~~,进去看看:http://blog.csdn.net/dawanganban/article/details/37863693");
                intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                startActivity(Intent.createChooser(intent, getTitle()));    */
				// 是否只有已登录用户才能打开分享选择页
				my2048View.saveMaxScore();
		        mController.openShare(MainActivity.this, false);
			}

第二种方式的实现有多种平台可选(这里选择友盟)

首先注册为友盟的开发者,并获取到友盟的appkey

友盟分享的帮助文档(http://dev.umeng.com/social/android/share/quick-integration),在实现分享之前需要做一些准备工作,去各个分享平台申请appkey

有个分享的详细请参考友盟的API(这里吐槽一下,API文档写的太烂了~~)

友盟的集成方式有三种,我选择的是官方推荐的第二种方式,所以需要引入一个外部的工程(用于分享的工程),并且将这个工程放到了与该工程同级的目录。

友盟社会化分享组件工程(项目中用的Git下载地址:[email protected]:lxq_xsyu/social_sdk_library_project.git)

这里混淆的时候需要注意一点路径问题:

-libraryjars ../social_sdk_library_project/libs/SocialSDK_QQZone_2.jar

四、完整源代码下载

上面只是抛砖引玉,有关详细和更好的方法请参考该项目,我将项目的所有源代码下载地址贴出(注:请使用Git工具下载,并下载上面的分享组件工程使用如图方式添加)

Git下载地址:[email protected]:lxq_xsyu/my2048.git

代码下载地址:https://code.csdn.net/lxq_xsyu/my2048/tree/master

最后如果你觉得对你有帮助,别忘了给阳光小强投上一票,投票地址:http://vote.blog.csdn.net/article/details?articleid=37863693

如果有问题请在下面留言~~如果阳光小强看到会及时回复的

是男人就下100层【第五层】——2048游戏从源码到发布市场,布布扣,bubuko.com

时间: 2024-10-03 22:54:53

是男人就下100层【第五层】——2048游戏从源码到发布市场的相关文章

是男人就下100层【第五层】——2048游戏

前言: 在"阳光小强"的实战系列博文<是男人就下100层>的上一层我们一起从零开始完成了我们自己的贪吃蛇游戏--CrazySnake,可能很多朋友还不过瘾,那么我们今天就来玩一玩最近一直比较火的2048游戏,让大家再过一把瘾.由于"阳光小强"目前并没有从事Android的游戏开发工作,所以这些游戏的实现并不需要很专业的游戏开发知识,如果你有Android的基础就可以一起来参与进来共同完成这个游戏.有些朋友可能就会说"这些小游戏,会不会有点简单,

是男人就下100层【第四层】——Crazy贪吃蛇(2)

在上一篇<是男人就下100层[第四层]--Crazy贪吃蛇(1)>中我们让贪吃蛇移动了起来,接下来我们来实现让贪吃蛇可以绕着手机屏幕边线移动并且可以改变方向 一.添加状态并修改代码 首先我们来用另外一种方式实现上一版本中的刷新界面,在Crazy贪吃蛇(1)中我们自定义了一个线程每隔1s钟刷新界面,在线程中我们使用了postInvalidate()方法通知主线程重绘界面,我们打开View的源代码看看到底是如何通知主线程的,原代码如下: public void postInvalidate(int

超多经典 canvas 实例,动态离子背景、移动炫彩小球、贪吃蛇、坦克大战、是男人就下100层、心形文字等等等

超多经典 canvas 实例 普及:<canvas> 元素用于在网页上绘制图形.这是一个图形容器,您可以控制其每一像素,必须使用脚本来绘制图形. 注意:IE 8 以及更早的版本不支持 <canvas> 元素. 贴士:全部例子都分享在我的 GayHub - https://github.com/bxm0927/canvas-special 尤雨溪个人主页炫彩三角纽带效果,点击还可变换 GitHub源码 . Demo演示 知乎登录注册页动态离子背景效果 GitHub源码 . Demo演

【编程马拉松】【026-是男人就下100层】

[编程马拉松算法目录] [026-是男人就下100层][工程下载>>>] 1 题目描述 相信大家都听说过"是男人就下100层"系列游戏,游戏中包括多个长度和高度各不相同的平台,地面是最低的平台,高度为零,长度无限. 一个男人在开始的时候从高于所有平台的某处开始下落,它的下落速度始终为1米/秒.当他落到某个平台上时,游戏者选择让他向左或向右跑,跑动的速度也是1米/秒.当他跑到平台的边缘时会继续下落.要求每次下落的高度不能超过MAX米,不然就会摔死,游戏也会结束. 请帮忙

是男人就下100层【第四层】——Crazy贪吃蛇(1)

贪吃蛇是一款很经典的游戏,这些经典游戏给我们的童年增加了不少乐趣,今天开始我们来一步一步的在Android设备上实现一款贪吃蛇游戏,我也是第一次写这个游戏,有可能会写错,或者走弯路,但是最终希望能有一个好的结果,接下来我们一起来一步步的摸着石头开发吧. 一.建立一个工程 二.自定义View(贪吃蛇界面) package com.example.crazysnake; import android.content.Context; import android.graphics.Canvas; i

是男人就下100层【第四层】——Crazy贪吃蛇(3)

上一篇<是男人就下100层[第四层]--Crazy贪吃蛇(2)>实现了贪吃蛇绕着屏幕四周移动,这一篇我们来完成贪吃蛇的所有功能. 一.随机产生苹果 private void addAppleBox(){ int randomX = random.nextInt(xMaxBoxCount); int randomY = random.nextInt(yMaxBoxCount); for(int i=0; i<boxs.size(); i++){ if(boxs.get(i).getX()

HTML5游戏开发_是男人就下100层

项目流程 市场调研(可行性分析)--> 可行性报告书  需求分析师.客户经理 需求分析--> 需求说明书  项目经理.需求分析师 概要设计--> 概要设计说明书(ER图, UML)  项目经理.项目组长 详细设计--> 详细设计说明书(流程图) 数据库建好.项目周期表(甘特图) office project visio 项目组长.开发人员 编码 --> 测试(单元测试) 提交svn 测试用例  开发人员 测试 --> 集成测试.黑白盒测试.冒烟测试  测试人员 --&g

是男人就下100层【第六层】——高仿豆瓣客户端

前一段时间阳光小强安装了一个豆瓣客户端,第一次打开就被这种界面风格吸引了,今天早上起来在打开豆瓣听音乐的时候,突然产生一个念头,来试着实现一下这种效果,打开客户端分析了一下发现其实这种效果的实现并不是想象中的那么难,下面我先分析一下这种效果的实现思路,然后一步步解释实现的过程,希望大家能提出意见和建议,一起交流学习. 先给大家展示一下我的成果吧: 其实豆瓣客户端的界面上还有其他的文字和菜单,但是这两个的实现效果和其他几个类似,可以作为代表,所以就不绘制那么多组件了. 转载请说明出处:http:/

是男人就下100层【第三层】——高仿交通银行手机客户端界面

http://blog.csdn.net/seiyagoo/article/details/46554133 http://blog.csdn.net/seiyagoo/article/details/46554135 http://blog.csdn.net/seiyagoo/article/details/46554141 http://blog.csdn.net/seiyagoo/article/details/46554151 http://blog.csdn.net/seiyagoo/