> 本安卓新手教程转载自 [CodeData](http://www.codedata.com.tw/)的 Android Tutorial系列教程 并作了简体中文转换(陆续更新中~)
![2015-06-14/557d170f56d55](https://box.kancloud.cn/2015-06-14_557d170f56d55.png)
你可以在[Google Play图书](https://play.google.com/store/books/details?id=H3IACQAAQBAJ)或[Pubu](http://www.pubu.com.tw/ebook/Android-Tutorial-49027)购买“Android Tutorial”电子书,采用ePub格式重新编排,在[GitHub](https://github.com/macdidi5/AndroidTutorial)公开所有范例程式。
## 西游记
四大古典名著里面的西游记,应该是古今中外妖魔鬼怪最多的一部小说了,除了大家熟悉的牛魔王、白骨精、金角、银角、蜘蛛精和其它一大堆奇形怪状的妖精,在第七十四回上场的狮驼洞,就有“三个魔头率领四万七八千个吃人的小妖”,这样还不够,狮驼洞旁边的狮驼国,整个国家全部是妖精!整部小说提到的大妖、小妖加起来,可能有上百万个。虽然有这么多可怕的吃人妖怪,不过读起西游记这部小说,能够不笑出来的人还真的不多,难怪有很多人说它是一部有趣的古典童话小说。
跟其它著名的章回小说类似,例如三国演义和水浒传,西游记也是集合正史、民间传说与说书人故事的章回小说。故事采用唐朝最有名的留学生唐三藏,西行到印度取经,途中经过五十几个国家,花费十七年的时间,带回佛经六百五十七部,并且终其一生都在翻译这些佛经。对所有人来说,一个和尚可以完成这样的事情,是完全无法想像而且觉得是不可能的。民间在推崇唐三藏的同时,也开始找一些比较合理的解释。因为印度实在是太远了,远到无法想像,所以演变成唐三藏到“西天”取经。也因为一路上经历太多苦难,所以加入孙悟空、猪八戒和沙悟净来帮助他,就连唐三藏骑的马也是海龙王的三太子变化的,否则一个凡人怎么可能完成这样的任务。
西游记中的角色非常多,所有人物、神佛和妖怪的外貌与个性,都非常活泼、鲜明而且有趣,每一个看西游记的读者都可以找到自己喜欢的人物。西游记里面最主要的角色孙悟空,可能是最多人喜欢的,他在小说中出现的名字就有孙悟空、弼马温、齐天大圣、孙行者、金公、心猿、斗战胜佛,还有猪八戒经常在背后骂他的泼猢狲、雷公嘴、孤拐面。光是从这些名字,就可以把孙悟空这个角色活灵活现的呈现在你的眼前,就好像真的有这么一只泼猴,拿着一根棒子在你的面前跳来跳去,随便一棒就打扁一个妖怪,一下子又变成小虫子飞来飞去。他有铜皮铁骨、火眼金睛、七十二变和筋斗云的神通广大,也有泼猴的任性和调皮,更有对唐三藏的忠心(注一),这样一个人物,大人小孩都喜欢。看齐天大圣和所有的人物,在这部小说里热闹的斗嘴、合作和打斗,不论什么人、什么时候来看,都是非常精采的好故事。
## Hello! Android!
接触Android以后,我总觉得它就像西游记里的孙悟空。有时候觉得它神通广大,一路上斩妖除魔(注二),现在已经成为全世界市占率最高的行动装置作业系统,任何人都可以在Android发挥所有的创意,各种应用的App比孙悟空的七十二变还要多好几倍。有时候又觉得它真是一只令人讨厌的泼猢狲,在你以为它是这样的时候,却又常常跟你唱反调,变来变去,改来改去,对Android开发人员来说,应该是对它最适合的形容词。也因为这种同时另人喜爱又讨厌的感觉,接触过Android的开发人员,也享受到完全不一样的乐趣。
虽然我觉得Android很像这只泼猴,不过它倒不是从石头里蹦出来的。2003年在美国加州成立一间叫作Android的公司(Android Inc.),由Andy Rubin与其它几位同仁一起研发“聪明的移动设备”。2005年,Google收购Android公司,虽然那个时候大家都猜不透Google的企图,不过大家也习惯了,因为这家网络服务公司经常有这类“创新”的举动。就在收购的新闻冷掉以后,Google在2007年送出多项移动领域的专利申请,因为那一年的一月,地球上出现了一种叫作iPhone的东西,而且让全世界的人对它充满了无比的爱慕,所以有很多人猜测Google可能要生产一种“足以和iPhone抗衡”的移动电话。
2007年11月答案揭晓了,在Google的领导下,成立一个开放手持设备联盟(Open Handset Alliance),成员有Broadcom、HTC和Intel等公司,隔年又陆续加入ARM和Sony等公司。Android确定是一个以Linux为核心基础,更加开放与自由的行动装置作业系统。Google也同时成立Android Open Source Project,负责持续发展Android系统系统,让全世界的开发人员设计Android应用程式,扩展它的功能和应用。
## Android近代史
从2008年9月发表的Android 1.0(代号Astro),到现在短短几年的时间,总共已经发表11个版本,大多数的版本都有很大的改进与变化。从2009年发表的Android 1.5(代号Cupcake)开始,Android采用点心的名称作为系统的代号,目前最新的Android 5代号是Lollipop:
* Android 1.5 Cupcake 杯子蛋糕:
![2015-06-22/55878ef0a7d57](https://box.kancloud.cn/2015-06-22_55878ef0a7d57.png)
* Android 1.6 Donut 甜甜圈:
![2015-06-22/55878ef8befb7](https://box.kancloud.cn/2015-06-22_55878ef8befb7.png)
* Android 2.0 Eclair 闪电泡芙(一种法式甜点):
![2015-06-22/55878f0530d24](https://box.kancloud.cn/2015-06-22_55878f0530d24.png)
* Android 2.2 Froyo 全名是FROzen YOgurt:
![2015-06-22/55878f0c70d9f](https://box.kancloud.cn/2015-06-22_55878f0c70d9f.png)
* Android 2.3 Gingerbread 姜饼人:
![2015-06-22/55878f1398f44](https://box.kancloud.cn/2015-06-22_55878f1398f44.png)
* Android 3.0 Honeycomb 蜂窝(不太像是一般的甜点):
![2015-06-22/55878f1bb24d4](https://box.kancloud.cn/2015-06-22_55878f1bb24d4.png)
* Android 4.0 Ice Cream Sandwich 冰淇淋三明治:
![2015-06-22/55878f299f2ac](https://box.kancloud.cn/2015-06-22_55878f299f2ac.png)
* Android 4.1 Jelly Bean 豆豆软糖:
![2015-06-22/55878f33536cd](https://box.kancloud.cn/2015-06-22_55878f33536cd.png)
* Android 4.4 KitKat 巧克力糖(由Nestle发售的一种巧克力):
![2015-06-22/55878f3c7da21](https://box.kancloud.cn/2015-06-22_55878f3c7da21.png)
* Android 5 Lollipop 棒棒糖:
![2015-06-22/55878f4492e13](https://box.kancloud.cn/2015-06-22_55878f4492e13.png)
## 关于Android Tutorial
对Java技术开发人员来说,进入开发Android应用程式的领域,应该不会是太困难的事情,通常最需要的就是时间,花一些时间看看范例,翻翻书,好像就可以写几个还蛮像样的App。不过以我自己的经验来说,这样的作法也是一连串灾难的开始,所以只好告诉自己,我是在享受这些灾难带来的另一种乐趣。
大约半年前,CodeData开始出现Tutorial这个令人又喜爱又讨厌的字,它通常是大家接触一种新技术的开始,如果可能的话,应该没有人会喜欢看这类充满技术名词,还有通常是没头没尾,而且少的可怜的范例。不过我们通常还是没有其它的选择,因为你可能找不到任何书籍或比较容易阅读的资料。
当你需要判断一种还没有接触过的技术,是不是值得花费时间去学习它,或是需要挑选一个适合专案使用的技术,研读这些技术提供的Tutorial,应该是非常困难又花时间的工作。Tutorial的价值是不用怀疑的,在开发旅程遇到许多困难的问题,通常可以从Tutorial找到清楚的答案。不过一般的Tutorial却不适合快速的了解与学习一种技术,所以这个“Android Tutorial”系列的文章,试着可以让你可以使用比较简短的时间,快速认识开发Android应用程式的方式,还有认识Android有哪一些可以让你发挥创意的可能性。
“Android Tutorial”系列文章会使用一个应用程式专案,带领你走过开发Android应用程式需要的基本认识,还有了解Android与其它平台整合的应用。让你花费比较少的时间,就可以认识Android应用程式怎么做与可以做什么。全部的内容分为六章、每一章有三到四节,适合你使用完整或片段的时间阅读,也非常适合用来当作六到十二个小时的课程教材。在系列专栏文章连载完成以后(可能会早一些),也会以电子书在Google Play图书上架。
参考资料:
* 西游记校注 / 吴承恩原著 ; 徐少知校 ; 朱彤, 周中明注 / 里仁书局
* Android Developer:[http://developer.android.com/](http://developer.android.com/)
注:
1. 虽然大部份的人认为孙悟空是因为头上的金箍儿,只要唐三藏使用必杀技“紧箍咒”,这只泼猴就不得不乖乖听话。不过在第二十七回,唐三藏因为误会赶走孙悟空,而且发誓不再唸紧箍咒,后来孙悟空还是因为心软又回来保护唐三藏。
2. Android从出现到普及这短短的几年之间,的确让一些行动装置作业系统走向历史,也让iOS不再保持独大的优势,不过我绝对没有说它们是“妖魔鬼怪”的意思,只是个人在Android和孙悟空之间的联想,请各平台的拥护者见谅。
课程相关的档案都可以GitHub浏览与下载。
[![2015-06-22/55878f6841892](https://box.kancloud.cn/2015-06-22_55878f6841892.png) https://github.com/macdidi5/AndroidTutorial](https://github.com/macdidi5/AndroidTutorial)
- 第一堂
- 第一堂(1)西游记里的那只猴子
- 第一堂(2)准备 Android Studio 开发环境
- 第一堂(3)开始设计 Android 应用程式
- 第一堂(4)开发 Android 应用程式的准备工作
- 第二堂
- 第二堂(1)规划与建立应用程式需要的资源
- 第二堂(2)设计应用程式使用者界面
- 第二堂(3)应用程式与使用者的互动
- 第二堂(4)建立与使用 Activity 元件
- 第三堂
- 第三堂(1)为ListView元件建立自定画面
- 第三堂(2)储存与读取应用程式资讯
- 第三堂(3)Android 内建的 SQLite 数据库
- 第四堂
- 第四堂(1)使用照相机与麦克风
- 第四堂(2)设计地图应用程式 - Google Maps Android API v2
- 第四堂(3)读取装置目前的位置 - Google Services Location
- 第五堂
- 第五堂(1)建立广播接收元件 - BroadcastReceiver
- 第五堂(2)系统通知服务 - Notification
- 第五堂(3)设计小工具元件 - AppWidget
- 第六堂
- 第六堂(1)Material Design - Theme与Transition
- 第六堂(2)Material Design - RecylerView
- 第六堂(3)Material Design - Shared Element与自定动画效果