Google Android团队在2012年起开设了Training课程,这是学习Android应用开发的绝佳一手资料。通过Github发起这个协作项目,借助开源的力量,完成中文版的输出并不断完善。维护这份官方的Android学习资料。欢迎大家的参与!
- PDF: 敬请期待
- ePub: 敬请期待
- Mobi: 敬请期待
- Android Training学习交流组:363415744,欢迎所有学习Android开发的同学加入!
- 欢迎给项目进行挑错纠正,你可以直接在Github上提交Issue或者Pull Request,谢谢!
目录对应的文件路径:所有的源文件放在项目根目录的SOURCE
目录下,打开SOURCE
目录下的SUMMARY.md
文件查看下面章节对应的路径与文件名,所有文章均使用Markdown格式,关于Markdown,请看下面的介绍
- 序言
- Android入门基础:从这里开始
- Android分享操作
- Android多媒体
- Android图像处理
- 高效显示Bitmap - @kesenhoo
- 使用OpenGL ES显示图像 - @jdneo
- 添加动画 - @XizhiXu
- Android网络连接
- 无线连接设备 - @naizhengtan
- 网络连接操作 - @kesenhoo
- 高效下载 - @kesenhoo
- 使用Sync Adapter传输数据 - @jdneo
- 使用Volley执行网络数据传输 - @kesenhoo
- Android云服务
- 云同步 - @kesenhoo,@jdneo
- 解决云同步的保存冲突 - @jdneo
- Android联系人信息 - @spencer198711
- Android位置信息 - @penkzhou
- Android可穿戴应用
- Android用户体验设计
- 设计高效的导航 - @XizhiXu
- 实现高效的导航 - @Lin-H
- 通知提示用户 - @fastcome1985
- 增加搜索功能 - @Lin-H
- 使得你的App内容可被Google搜索 - @Lin-H
- Android用户界面设计
- Android用户输入
- 使用触摸手势 - @Andrwyw
- 处理键盘输入 - @zhaochunqi
- 兼容游戏控制器 - 待认领
- Android后台任务
- Android性能优化
- 管理应用的内存 - @kesenhoo
- 性能优化Tips - @kesenhoo
- 提升Layout的性能 - @allenlsy
- 优化电池寿命 - @kesenhoo
- 多线程操作 - @AllenZheng1991
- 避免程序无响应ANR - @kesenhoo
- JNI Tips - @pedant
- 优化多核处理器(SMP)下的Android程序 - @kesenhoo - 5%
- Android安全与隐私
- Android测试程序
先申请加入群或者私信邮件给我(联系方式见Github主页),和我说明认领的章节与你的Github账户名,我会及时更新认领进度到项目主页。
欢迎任何形式的挑错与纠正,你可以Fork一份项目到你的账户下,修改你仓库下的文件,再使用Github的Pull Request提交你的修改纠正!
- 1)fork我的项目到自己的账户下
https://github.com/kesenhoo/android-training-course-in-chinese
- 2)把fork之后的项目clone到本地
git clone https://github.com/{user_name}/android-training-course-in-chinese
- 3)为本地的分支添加原始的远程仓库
git remote add upstream https://github.com/kesenhoo/android-training-course-in-chinese.git
git fetch upstream
-
4)使用Gitbook编辑器进行
- Mac版http://url.cn/LddkKy
- PC版http://url.cn/LLOySy
- 操作步骤:菜单File->Open Book->打开SOURCE目录,找到对应的章节,开始文档。也可以选择自己喜欢的Markdown编辑器找到对应的文件,直接。 下载链接无法使用的,请加入群,在群共享中进行下载。
-
5)若是在文件之前或者提交文件之前,原始仓库的内容有更新,需要运行下面的命令来合并更新到本地,再把本地的更新提交到自己的远程仓库,这样才能让自己的远程仓库与原始的Fork仓库保持一致。
git fetch upstream
# 拉取把原始远程仓库的更新
git merge upstream/gh-pages
# 把原始远程仓库的更新合并到本地
git push origin gh-pages
# 提交更新到自己的远程仓库
- 5)好文档之后,相应的md文件已经被修改,commit到本地,再PUSH到自己的远程仓库
git add .
# 把当前修改的所有文件提交到工作区
git commit
# 提交修改到本地仓库
git push origin gh-pages
# 把本地修改提交到自己的远程仓库
- 7)登入Github账户,找到自己的远程仓库,在右边的Pull Request里面提交与原始Fork仓库的合并的请求,提交之后,我会进行处理再合并到项目主仓库。
Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式文档,然后转换成格式丰富的HTML页面。 —— 维基百科
10分钟简明语法请参考:http://jianshu.io/p/q81RER
附加技巧:
- 插入的图片请放到你编辑的md文件的同一层级目录下,用法如下
![basic-lifecycle-paused](basic-lifecycle-paused.png "这张图演示了Activity生命周期中的暂停状态")
[点击链接跳到本页面的在线阅读段落](#online_reading)
[点击链接跳到本地其他页面的指定段落](index.html#course)
有不清楚的地方请直接查看由我编辑的课程源代码示例。
近期Google被墙的厉害,无法正常登入Android网站,想要查看Training的文档,有点麻烦! 我把所有的Google Android文档打包存在云端,有需要的同学点击下面的链接进行下载:
仍然无法下载的同学,可以加入交流群,资料已经在群共享中。
项目采用 知识共享 署名-非商业性使用-相同方式共享 4.0 国际 许可协议进行许可。