Android 游戏开发大全(第3版)(txt+pdf+epub+mobi电子书下载)


发布时间:2020-09-25 22:41:21

点击下载

作者:吴亚峰 苏亚光 于复兴

出版社:人民邮电出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

Android 游戏开发大全(第3版)

Android 游戏开发大全(第3版)试读:

前言

为什么要写一本这样的书

Android 正以前所未有的速度聚集着来自世界各地的开发者,越来越多的创意被应用到Android应用程序的开发中,大有席卷整个手机产业的趋势。

面对如此火爆的Android大潮,不少有关Android的技术书籍也开始出现在图书市场。但是纵观这些种类繁多的Android书籍,却很少是关于Android游戏开发专题的,而手机游戏历来是移动开发中最重要的部分。

本书正是在这种情况下应运而生的,作为国内第一本讲解Android游戏案例开发的专业书籍,作者为这本书倾注了很多的心血。书中既有对Android应用程序框架的介绍,也有对游戏开发相关知识的讲解,同时还有多个Android平台下的实际游戏案例。希望可以帮助读者快速提高在Android平台下进行游戏开发的能力。

内容导读

本书内容分为两部分,前半部分主要介绍Android平台下应用程序的框架和基础开发知识,同时还介绍了游戏开发的相关知识,主要内容安排如下。续表

本书后半部分主要内容为7个大的游戏案例,其中包括休闲游戏、益智游戏、动作游戏、塔防游戏、策略游戏等不同的游戏类型,每种游戏类型的案例开发都有其独特的地方,具体内容安排如下。

本书特点

1.内容充实,由浅入深

本书内容既包括Android平台下开发的基础知识,也有游戏编程的实用技巧,同时还有多个游戏实际案例等供读者学习。在知识的层次上由浅入深,真正地将Android和游戏开发结合起来。

2.实例丰富,讲解详细

本书在介绍Android基础内容时,每个知识点都配有相应的实例,通过这些实例,读者可以更好地理解书中所介绍的知识。同时在实例的讲解上也尽量做到条理清楚,读者可以按照书中列出的步骤非常容易地实现实例中的功能。

3.案例经典,含金量高

本书中的游戏案例均是作者精心挑选的,不同类型的游戏有着其独特的开发方式。本书中的案例囊括了不同的游戏类型,以及不同的游戏开发技巧,以期让读者全面掌握手机游戏的开发技术,具有很高的含金量,非常适合各类游戏开发者学习。

4.附带光盘,内容实用

为了便于读者学习,本书附赠的光盘中包含了书中所有案例的完整源代码,读者可以直接导入运行仔细体会其效果,能最大限度地帮助读者快速掌握开发技术。

本书面向的读者

Android初学者

对于Android的初学者,可以通过本书前半部分的内容巩固Android的知识,并了解与游戏开发相关的如人工智能和物理引擎等基础知识。然后在此基础上学习本书后半部分的游戏案例,这样可以全面掌握Android平台下游戏开发的技巧。

有Java基础的读者

Android平台下的开发基于Java语言,所以对于有Java基础的读者来说,阅读本书将不会感觉到困难。读者可以通过前半部分的基础内容迅速熟悉Android平台下应用程序的框架和开发流程,然后通过后半部分的游戏案例提高自己在游戏开发方面的能力。

在职开发人员

本书中的游戏案例都是作者精心挑选的,其中涉及的与游戏开发相关的知识均是作者多年来积累的经验与心得体会。具有一定开发经验的在职开发人员可以通过阅读本书进一步提高开发水平,并迅速转行成为Android的游戏开发人员。

关于作者

吴亚峰,毕业于北京邮电大学,后留学澳大利亚卧龙岗大学取得硕士学位。1998年开始从事Java应用的开发,有10多年的Java开发与培训经验。主要的研究方向为OpenGL ES、手机游戏、Java EE及搜索引擎。同时为手机游戏、Java EE独立软件开发工程师,并兼任百纳科技Java培训中心首席培训师。近10年来为多家著名企业培养了上千名高级软件开发人员,曾编写过《Android 3D游戏开发技术宝典——OpenGL ES 2.0》《Android游戏开发大全》(第1版及第2版)《OpenGL ES 2.0游戏开发(上下卷)》《Cocos2d—X案例开发大全》《Cocos2d—X 3.0游戏开发实战详解》《Unity 4 3D开发实战详解》等多本畅销技术书籍。2008年年初开始关注Android平台下的3D应用开发,并开发出一系列优秀的Android应用程序与3D游戏。

苏亚光,哈尔滨理工大学硕士,从业于计算机软件领域10多年,在软件开发和计算机教学方面有着丰富的经验,曾编写过《Android游戏开发大全》《Android 3D游戏开发技术详解与典型案例》《Android应用案例开发大全》等多本畅销技术书籍。2008年年初开始关注Android平台下的应用开发,参与开发了多款手机2D/3D游戏应用。

于复兴,北京科技大学硕士,从业于计算机软件领域10余年,在软件开发和计算机教学方面有着丰富的经验。工作期间曾主持科研项目“PSP流量可视化检测系统研究与实现”,主持研发了省市级项目多项,同时为多家企事业单位设计开发了管理信息系统,并在各种科技刊物上发表多篇相关论文。2008年开始关注Android平台下的应用开发,参与开发了多款手机3D游戏应用。

致谢

本书在编写过程中得到了唐山百纳科技有限公司Java培训中心的大力支持,同时于庭龙、魏鹏飞、李腾飞、王旅波、李胜杰、郭超、王思维、仇磊、夏学良、冯儒韬、郑培阳、郭小月、李雪晴、宋盼盼、梁宇、黄建勋、蒋科、任俊刚、金亮、李玲玲、张双彐、刘佳、张月月、贺蕾红、陆小鸽、吴硕、王海涛、李世尧、王海峰及作者的家人为本书的编写提供了很多帮助,在此表示衷心感谢!

由于编者水平有限,书中疏漏之处在所难免,欢迎广大读者批评指正,本书读者QQ交流群:277435906。

编辑联系邮箱:zhangtao@ptpress.com.cn。

编者▶▶第1章Android平台简介

Android是Google公司于2007年11月5日发布的基于Linux内核的移动平台,该平台由操作系统、中间件、用户界面和应用软件组成,是一个真正开放的移动开发平台。

本章将介绍Android系统的起源、特点、应用程序框架及开发环境的搭建,让读者对Android平台有个初步的了解,之后将开发第一个Android程序Hello Android,并通过对该程序的简单分析,带领读者步入Android开发的大门。1.1 Android的来龙去脉

Android的创始人Andy Rubin是硅谷著名的“极客”,他离开Danger移动计算公司后不久便创立了Android公司,并开发了Android平台,他一直希望将Android平台打造成完全开放的移动终端平台。之后Android公司被Google公司看中并将其收购。这样,号称全球最大的搜索服务商Google大举进军移动通信市场,并推出自主品牌的移动终端产品。

2007年11月初,Google正式宣布与其他33家手机厂商、软硬件供应商、手机芯片供应商、移动运营商联合组成开放手机联盟(Open Handset Alliance),并发布名为Android的开放手机软件平台,希望建立标准化、开放式的移动电话软件平台,在移动行业内形成一个开放式的生态系统。1.2 掀起Android的盖头来

自从Android发布以来,越来越多的人关注Android的发展,越来越多的开发人员在Android系统平台上开发应用,是什么使Android备受青睐,在众多移动平台中脱颖而出呢?1.2.1 选择Android的理由

与其他手机平台上的操作系统相比,Android具有如下优点:

开放性;

平等性;

无界性;

方便性;

硬件的丰富性。

下面将对以上各个优点进行简单介绍。

1.开放性

提到Android的优势,首先想到的一定是其真正的开放,其开放性包含底层的操作系统及上层的应用程序等。Google与开放手机联盟合作开发Android的目的就是建立标准化、开放式的移动软件平台,在移动产业内形成一个开放式的生态系统。

Android的开放性也同样会使大量的程序开发人员投入Android程序的开发中,这将为Android平台带来大量新的应用。

2.平等性

在Android的系统上,所有的应用程序完全平等,系统默认自带的程序与自己开发的程序没有任何区别,程序开发人员可以开发个人喜爱的应用程序来替代系统的程序,构建个性化的Android手机系统,这些功能在其他的手机平台是没有的。

在开发之初,Android 平台就被设计成由一系列应用程序组成的平台,所有的应用程序都运行在一个虚拟机上面。该虚拟机提供了系列应用程序之间和硬件资源通信的API。

3.无界性

Android 平台的无界性表现在应用程序之间的无界,开发人员可以很轻松地将自己开发的程序与其他应用程序进行交互,如应用程序需要播放声音的模块,而正好你的手机中已经有一个成熟的音乐播放器,此时就不需要再重复开发音乐播放功能,只需简单地加上几行代码即可将成熟的音乐播放功能添加到自己的程序中。

4.方便性

在Android平台中开发应用程序是非常方便的,如果对Android平台比较熟悉,想开发一个功能全面的应用程序并不是什么难事。Android平台为开发人员提供了大量的实用库及方便的工具,同时也将Google Map等强大的功能集成了进来,只需简单的几行调用代码即可将强大的地图功能添加到自己的程序中。

5.硬件的丰富性

由于平台的开放,众多的硬件制造商推出了各种各样的产品,但这些产品功能上的差异并不影响数据的同步与软件的兼容,例如,原来在诺基亚手机上的应用程序,可以很轻松地被移植到摩托罗拉手机上使用,且联系人、短信息等资料更是可以方便地转移。1.2.2 Android的应用程序框架

从软件分层的角度来说,Android 平台由应用程序、应用程序框架、Android 运行时库层及Linux内核共4部分构成,本节将分别介绍各层的功能,分层结构如图1-1所示。▲图1-1 Android平台架构图

1.应用程序层

本层的所有应用程序都是用Java编写的,一般情况下,很多应用程序都是在同一系列的核心应用程序包中一起发布的,主要有拨号程序、浏览器、音乐播放器、通讯录等。该层的程序是完全平等的,开发人员可以任意将Android自带的程序替换成自己的应用程序。

2.应用程序框架层

对于开发人员来说,接触最多的就是应用程序框架层。该应用程序的框架设计简化了组件的重用,其中任何一个应用程序都可以发布自身的功能供其他应用程序调用,这也使用户可以很方便地替换程序的组件而不影响其他模块的使用。当然,这种替换需要遵循框架的安全性限制。

该层主要包含以下9部分,如图1-2所示。▲图1-2 应用程序框架

活动管理(Activity Manager)。用来管理程序的生命周期,以及提供最常用的导航回退功能。

窗口管理(Window Manager)。用来管理所有的应用程序窗口。

内容供应商(Content Providers)。通过内容供应商,可以使一个应用程序访问另一个应用程序的数据,或者共享数据。

视图系统(View System)。用来构建应用程序的基本组件,包括列表、网格、按钮、文本框,甚至是可嵌入的Web浏览器。

包管理(Package Manager)。用来管理Android系统内的程序。

电话管理(Telephony Manager)。所有的移动设备的功能统一归电话管理器管理。

资源管理(Resource Manager)。资源管理器可以为应用程序提供所需要的资源,包括图片、文本、声音、本地字符串,甚至是布局文件。

位置管理(Location Manager)。该管理器是用来提供位置服务的,如GPRS定位等。

通知管理(Notification Manager)。主要是对手机顶部状态栏的管理,开发人员在开发Android程序时会经常使用,如来短信提示、电量低提示,还有后台运行程序的提示等。

3.Android运行时库

该层包含两部分,程序库及Android运行时库。

程序库为一些C/C++库,这些库能够被Android系统中不同的应用程序调用,并通过应用程序框架为开发者提供服务。而Android运行时库包含了Java编程语言核心库的大部分功能,提供了程序运行时所需调用的功能函数。

程序库主要包含的功能库如图1-3所示。

libc。是一个从BSD继承来的标准C系统函数库,专门针对移动设备优化过的。

Media Framework。基于PacketVideo公司的OpenCORE。支持多种常用音频、视频格式回放和录制,并支持多种图像文件,如MPEG-4、H.264、MP3、AAC、AMR、JPG、PNG等。

Surface Manager。Surface Manager主要管理多个应用程序同时执行时,各个程序之间的显示与存取,并且为多个应用程序提供了2D和3D图层无缝的融合。

SQLite。所有应用程序都可以使用的轻量级关系型数据库引擎。

WebKit。 是一套最新的网页浏览器引擎。同时支持Android浏览器和一个可嵌入的Web视图。

OpenGLIES。是基于OpenGL ES 1.0 API标准来实现的3D绘制函数库。该函数库支持软件和硬件两种加速方式执行。

FreeType。提供位图(bitmap)和矢量图(vector)两种字体显示。

SGL。提供了2D图形绘制的引擎。

Android运行时库包括核心库及Dalivik虚拟机,如图1-4所示。▲图1-3 程序库框架▲图1-4 Android运行时库

核心库(Core Libraries)。该核心库包括Java语言所需要的基本函数及Android的核心库。与标准Java不一样的是,系统为每个Android的应用程序提供了单独的Dalvik虚拟机来执行,即每个应用程序拥有自己单独的线程。

Dalvik虚拟机(Dalvik Virtual Machine)。大多数的虚拟机(包括JVM)都是基于栈的,而Dalvik虚拟机则是基于寄存器的,它可以支持已转换为.dex格式的Java应用程序的运行。.dex格式是专门为Dalvik虚拟机设计的,更适合内存和处理器速度有限的系统。

4.Linux内核

Android平台中操作系统采用的是Linux 2.6内核,其安全性、内存管理、进程管理、网络协议栈和驱动模型等基本依赖于Linux。对于程序开发人员,该层为软件与硬件之间增加了一层抽象层,使开发过程中不必时时考虑底层硬件的细节。而对于手机开发商而言,对此层进行相应的修改即可将Android平台运行到自己的硬件平台之上。1.3 Android开发环境的搭建

本节主要讲解基于Eclipse的Android开发环境的搭建(包括SDK的下载和SDK的配置)、模拟器的创建和运行,以及Android开发环境搭建好之后,对其开发环境进行测试并创建第一个Android应用程序Hello Android等相关知识。1.3.1 Android SDK的下载

前面已经对Android平台进行了简单的介绍,从本节开始,将向读者介绍如何逐步搭建自己的开发环境。Android SDK是开发Android应用程序的基础开发环境,其本身是免费的,下面将向读者介绍Android SDK的下载,其具体步骤如下。(1)首先在浏览器中输入http://developer.android.com/sdk/index.html,打开Android SDK的官方下载网站,如图1-5所示。点击网页右下角被椭圆圈中的内容为“Download the SDK…”的区域,进入SDK的下载页面,如图1-6所示。(2)进入到SDK的下载页面后,按照图1-6中被红色椭圆圈中的区域进行下载项选择(作者选择的是Windows下的32位版本),然后点击网页正下方被椭圆圈出的内容为“Download the SDK…”的区域进行下载,此时浏览器会弹出下载对话框(这一点不同的浏览器会有所不同),如图1-7所示。▲图1-5 SDK官方下载首页▲图1-6 下载页面▲图1-7 下载对话框

完成以上步骤,等待Android SDK下载完成,就可以进行环境搭建的下一步工作了,也就是对Android SDK进行相关的配置,这些内容将在下一节中向读者介绍。1.3.2 Android SDK的配置

下载完成后,就可以对Android SDK进行解压和配置了,主要步骤如下。(1)Android SDK下载成功后,会得到一个名称为“adt-bundle-windows-x86-20140702”的压缩包(随选择下载版本的不同,此名称可能不同)。将此压缩包解压得到同名文件夹,如图1-8所示。▲图1-8 下载后得到的压缩包及解压后的文件夹▲图1-9 解压后的文件夹的子目录(2)打开解压后的文件夹,如图1-9所示。其中名称为“eclipse”的子文件夹为绑定了ADT插件的用于Android应用程序开发的集成开发环境——Eclipse。另外一个名称为“sdk”的子文件夹则是要进行配置的Android SDK。(3)打开“eclipse”子文件夹,如图1-10所示。接着点击其中的“eclipse.exe”,启动Eclipse集成开发环境,此时会出现如图1-11所示的界面。(4)图1-11所示界面是提醒读者设置自己的项目工作区路径,作者采用的是“E: \软件\workspace”。建议读者的工作区路径设置和作者的保持一致,这样在进行后继案例的学习时可能会方便不少,当然读者也可以采用自己特定的工作区路径。▲图1-10 eclipse文件夹的子目录▲图1-11 Android工作区的选择

提示

若读者的工作区路径与作者这里设置的不一样,也是可以的。但导入的Android项目都需要对构建器进行修改才能正常编译运行。如何修改构建器会在后面进行介绍,读者到时注意一下即可。(5)指定完工作区路径后,就进入了Eclipse的主界面,如图1-12所示。在此界面中选择“Window”菜单下面的“Preferences”子菜单项,系统将弹出“Preferences”配置界面,如图1-13所示。▲图1-12 Android的SDK的配置图1▲图1-13 Android的SDK的配置图2(6)选择“Preferences”配置界面左侧列表中的“Android”选项(如图1-13步骤1所示),然后点击界面右上侧的“Browse…”按钮(如图1-13步骤2所示),在弹出的文件浏览界面中选中前面解压得到的“sdk”目录(如图1-13步骤3所示)。(7)选中“sdk”目录后,点击文件浏览界面中的“确定”按钮(如图1-13步骤4所示)。等文件浏览界面消失后,再点击“Preferences”配置界面中右下侧的“Apply”按钮(如图1-13步骤5所示),若此时看到图1-13中列出了多个Android版本的信息(如图1-13中“配置成功的标志”框所圈中的部分),则说明配置成功。(8)最后点击“Preferences”配置界面中右下侧的“OK”按钮(如图1-13步骤6所示)即完成了整个Android SDK的配置。(9)图1-13中只有“Android 4.4W”版本,如果需要其他的版本,可点击Eclipse主界面中的(Android SDK Manager)按钮,进入加载界面,如图1-14所示。加载完成后,进入Android SDK Manager界面,如图1-15所示,在该界面勾选需要下载的SDK版本,再单击“Install…”进行下载、安装即可。▲图1-14 单击Android SDK Manager▲图1-15 SDK下载界面

提示

在图1-15SDK下载界面中单击“Install…”进行下载安装SDK版本时,需要联网下载,且下载速度较慢,请读者耐心等待。

至此,用于开发Android应用程序的Android开发环境的搭建及相关环境的配置就完成了,读者此时就可以正式开始Android应用开发之旅了。1.3.3 创建并启动模拟器

开发环境搭建基本完成后,在正式开发Android应用程序之前,还有一个很重要的工作就是创建模拟器。模拟器可以在初学者没有实际设备的情况下在PC上对应用程序进行简单的运行测试,很大程度上降低了学习的成本。且模拟器的创建很简单,其具体步骤如下。(1)首先在Eclipse中单击(Android Virtual Device Manager)按钮,如图1-16所示。(2)单击按钮后,系统将弹出Android Virtual Device Manager对话框,如图1-17所示。▲图1-16 “Android SDK and AVD Manager”按钮▲图1-17 Android SDK and AVD Manager对话框(3)在弹出的Android SDK and AVD Manager对话框中单击“New”按钮(如图1-18所示),系统将弹出Create new Android Virtual Device(AVD)对话框,如图1-19所示。(4)在Create new Android Virtual Device(AVD)对话框中输入模拟器的名称(这里输入的是android4.2.2),下拉Target列表选中Android4.2.2-API Level 17,在Internal Storage面板中输入100 (代表内部存储容量为100MB),在SD Card面板中的Size文本框中输入100(代表SD卡容量为100MB),如图1-20所示。(5)然后设置模拟器显示屏分辨率为5.1WVGA(480*800),最后勾选Use Host GPU开启本地GPU渲染支持,如图1-20所示。模拟器配置完成后,单击“OK”按钮,即可完成创建指定版本的Android模拟器。▲图1-18 New按钮▲图1-19 Create new Android Virtual Device(AVD)对话框(6)创建完Android SDK的模拟器后,在Android SDK and AVD Manager对话框中就可以显示出创建的Android SDK模拟器了,如图1-21所示。▲图1-20 模拟器配置▲图1-21 创建完成的Android SDK模拟器(7)在Android SDK and AVD Manager对话框中选中创建的Android模拟器,单击“Start”按钮(如图1-22所示),弹出Launch Options对话框,如图1-23所示。▲图1-22 Start按钮

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载