如何自学Android, 教大家玩爆Android
来源:互联网 发布:pbft 共识算法 实验 编辑:程序博客网 时间:2024/04/29 17:57
如何自学Android
1. Java知识储备
本知识点不做重点讲解:
对于有基础的同学推荐看《Java编程思想》,巩固基础,查漏补全,了解并熟悉更多细节知识点。
对于没有基础的同学推荐看一本Java基础的书籍,看完后可以继续看《Java编程思想》提升自己。
对于自认为时间很充裕,只要基础学扎实就好的推荐看《疯狂Java讲义》,这本书真的很厚,但是讲解的特别详细。
2. Android基础学习
1. 基础UI学习
对于这些基础UI的使用API谷歌官网给出了很好的实例。对于上不了谷歌的同学,可以参考http://www.android-doc.com/reference/packages.html
比如我要看Button如何使用:
在网站的右上角搜索栏里面输入“Button”,然后下面提示一些带“Button”关键字的类,我们点击我们想要查看的类就可以看到这个类的基本使用方法及其API。
2. 四大组件学习
Activity的学习可以参考这几篇博文:
Activity生命周期
Activity的四种launchMode
Activity的task相关
Service的学习可以参考这篇博文:
Service完全解析
BroadCastReceiver的学习可以参考这篇博文:
BroadcastReceiver应用详解
ContentProvider的学习可以参考这几篇博文:
ContentProvider之读写联系人
ContentProvider之读写短消息
创建及调用自己的ContentProvider
四大组件之间的纽带Intent的学习可以参考这篇博文:
Intent应用详解
注意:默认情况下面Service是在主线程中运行的,默认情况下面BroadCastReceiver是存活在Android系统中的,不随着应用程序的关闭而消亡。
3. 五大布局学习
五大布局的精简使用介绍可以参考下面几篇博文:
LinearLayout、AbsoluteLayout
RelativeLayout、FrameLayout
TableLayout (一)
TableLayout (二)
五大布局详细介绍使用可以参考这篇博文:
Android系统五大布局详解Layout
4. 友好交互学习
这几个内容的学习可以参考下面几篇博文:
Android中的Menu(菜单)的三种类型菜单的学习
android ListView
Android Dialog用法
android Toast大全(五种情形)建立属于你自己的Toast
Notification的几种用法!
Android中PopupWindow的使用
5. 数据存储
- 内存存储将数据存储在内存中,读取速度最快但是不能永久性存储。
- 文件存储通过Java的IO流将数据以文件的形式存储在磁盘上。
- SharedPreferences以固定格式的xml文件的形式将数据存储在磁盘上。
- 数据库存储一般是指将数据存储到Android自带的sqlite数据库中。
- 网络存储是将数据传到云端进行存储。(典型应用:网盘)
SharedPreferences和数据库存储可以参考下面几篇博文:
Android SharedPreferences的使用
android中的数据库操作
6. 网络访问
- HttpClient:是Apache提供的。
- HttpURLConnection:是谷歌根据Java自带的URLConnection改进的。
- Socket:Socket是Java自带的基于TCP/IP的通信工具。
- WebView:WebView是基于谷歌chromium内核的一个可以作为浏览器的视图。
这几个内容可以参考下面几篇博文:
Android HttpClient
Android_HttpURLConnection_Get和Post请求
基于android的Socket通信
android WebView总结
关于HttpClient,HttpURLConnection部分也可以参考郭霖的《第一行代码》中的相关部分。
注意:Android从4.0开始后就不能再主线程中进行网络操作。
7. 动画讲解
这几个内容可以参考下面几篇博文:
详解Android动画之Frame Animation
详解Android动画之Tween Animation
Android 属性动画(Property Animation) 完全解析 (上)
Android 属性动画(Property Animation) 完全解析 (下)
8. 画图
- View画图可以参考Android画图最基本的三个对象(Color,Paint,Canvas)
- SurfaceView画图可以参考android之View和SurfaceView
- OpenGL ES画图可以参考Android OpenGL ES 教程
9. 多媒体与照相机
这几个内容可以参考下面几篇博文:
【Android笔记】MediaPlayer基本使用方式
Android Camera(一) 调用系统相机应用
Android Camera(二) Camera程序编写
10. 高级UI学习
这几个内容可以参考下面几篇博文:
Android Fragment完全解析,关于碎片你所需知道的一切
有关ViewFlipper的使用及设置动画效果的讲解
Android ViewPager使用详解
Android ActionBar完全解析,使用官方推荐的最佳导航栏(上)
Android ActionBar完全解析,使用官方推荐的最佳导航栏(下)
Android 自定义View (一)
Android 手把手教您自定义ViewGroup(一)
注意:使用Fragment的时候注意是用的是android.support.v4.app.Fragment
还是android.app.Fragment
11. 样式开发
这几个内容可以参考下面几篇博文:
Android样式的开发:shape篇
Android样式的开发:selector篇
Android样式的开发:layer-list篇
Android样式的开发:drawable汇总篇
Android样式的开发:View Animation篇
Android样式的开发:Property Animation篇
Android样式的开发:Style篇
12. 多线程与通信
- Handle学习可以参考Android消息处理机制(Handler、Looper、MessageQueue与Message)
- AsyncTask学习可以参考详解Android中AsyncTask的使用
- AIDL学习可以参考Android AIDL使用详解
13. 其它知识点
这几个内容可以参考下面几篇博文:
android基本架构
Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组
Android Manifest.xml 结构详解
Android GestureDetector手势识别类
Android事件传递机制
Android 编程下 Touch 事件的分发和消费机制
Android事件分发机制实例验证
Android Clipboard(复制/剪贴板)
14. 一些Android学习网站和博客
1. 三大Android最佳学习网站
2. Android常用三大仓库
经常我们在github上面找到的项目不提供库文件的下载,我们又希望直接下载库文件怎么办,看该项目上传到什么仓库去了,然后到仓库里面去下载库文件。
- snapshots
- maven
- jcenter
- Jetpack
3. Android实用网站
4. Android优秀博客
- 郭霖
- 鸿洋
- Trinea
- 赵凯强
- 任玉刚
- 一叶飘舟
- Scott
- 张兴业
- 夏安明
- 刘望舒
- 杨守乐
- 【GitHub】https://github.com/xiaole0310
【csdn博客】http://blog.csdn.net/xiaole0313
【新浪微博】http://weibo.com/u/5439466748
【知乎】http://www.zhihu.com/people/yang-shou-le
【简书】http://www.jianshu.com/users/1a47e8afa34a
【Email】ysle0313@gmail.com【技术群】279126311 [满]
【技术群】484572225 [未]Android Studio 2.2 新功能实例代码:
Android Studio 2.2新功能实例源码(玩爆Android Studio 2.2必备)欢迎扫描关注我们的微信公众号(ysle_0313),不要错过每一篇干货~
- 如何自学Android, 教大家玩爆Android
- 如何自学Android, 教大家玩爆Android
- 如何自学Android
- 如何自学Android编程?
- 如何自学Android编程?
- 如何自学Android编程
- 如何自学Android编程
- 如何自学Android编程
- 如何自学Android编程
- 如何自学Android编程
- 如何自学Android编程
- 如何自学Android
- 如何自学Android?
- 如何自学Android
- 如何自学Android
- 如何自学Android
- 如何自学Android编程
- 如何自学Android编程
- 指针在javascript的使用方式
- Shell 脚本知识回顾 (三) —— 替换、运算符、字符串、数组
- webservice学习之处理Map等CXF无法自动转化的类型
- hdu 1556 Color the ball(线段树)
- 【基础篇】网页UI设计与重构那些事儿
- 如何自学Android, 教大家玩爆Android
- Shell 脚本知识回顾 (二) —— Shell变量
- struts2 result param
- SQL基本操作
- osg3.2.1+vs2010++QT5.4.2+win7 64编译方法
- 回答bestswifter的BAT面试问题
- 165. Compare Version Numbers
- Shell 脚本知识回顾 (一) —— 基础篇
- osgOcean+VS2010+Win7编译方法