我刚开始接触Android时候,怎么入手一点想法也没,如果说是直接从SDK文档入手,那从哪里看起呢?如果是网上找例子,那又该找哪种例子来学习呢?两种方法很好。我当时是跟了一个项目,跟着项目做,以项目带动学习,这其实是超好的方法,也是学习很快的方法。如果没有项目怎么办呢,可以自己定一个任务,然后做出来,呵呵,放心,只要能想出来的,只管做,即便是自己做遍实验查遍网站也做不出来的话,那么就证明了Android的确做不出来,这也会学到很东西的,不信自己可以试试(好比我想让照相机竖屏加载,结果证明是很难做到,甚至是做不到的,就是这样,详见:Android照相机竖屏研究引导http://hi.baidu.com/juwend/blog/item/9977a8f69dff2229730eec6b.html)。
  经过一段时间的学习,我对Android有了更深刻的理解,我们可以根据Android SDK的引导(官网:http://developer.android.com/guide/topics/fundamentals.html,本地:本地SDK/guide/topics/fundamentals.html)列出Android的5个关键类,也就是把Android应用开发入手方向大致划分成了5个大块,正如本文标题写的一样——Activity应用活动、 Service后台服务、BroadcastReceiver广播接收、ContentProvider数据支持(外部数据)、Intent意图(活动桥),在此也感谢《GoogleAndroid 开发入门与实战》给我的启发(书挺贵的,例子较基础,大多围绕SDK展开,但是代码格式不怎么规范,应该是排版搞出来的问题,最有价值的是书最后的几个项目例子,能学到不少东西,很感谢书的作者提供了这些东西)。
  下面就简略讲讲这5个关键块,详细的可以见其各自的文档说明:
  1. Activity:应用活动(官网:http://developer.android.com/reference/android/app/Activity.html,本地:本地SDK/reference/android/app/Activity.html)
  Activity几乎承接着用户对应用程序(Application)的所有操作,Activity应该有一个窗口(Window),这个窗口是可以通过不用的主题(Theme)改变样子的。Activity应该要注意它的生命周期(Lifecycle)、设备状态(Configuration)改变时的影响以及运行状态和数据的保存,这个在一个应用程序是否可靠和人性化上至关重要。Activity里还应该要申明一些许可(Permissions),以便使用Android的一些软硬件功能,这些申明可以由代码或者Manifest.xml给出。最后,每个Activity(的入口)一定要在Manifest当中申明。
2. Service:后台服务(官网:http://developer.android.com/reference/android/app/Service.html,本地:本地SDK/reference/android/app/Service.html)
  Service是没有界面的程序,它是所谓的服务,也叫后台程序。应该要非常注意Service的启动(startService)和绑定(bindService)这两种开启Service的方法之间的关系以及Service对应的生命周期,两种开户Service的方法对Service 的生命周期效果是不同的。还有就是申明许可以及申明Service,也是在代码内或者Manifest内申明。
  3. BroadcastReceiver:广播接收(官网:http://developer.android.com/reference/android/content/BroadcastReceiver.html,本地:本地SDK/reference/android/content/BroadcastReceiver.html)
  广播接收并不是通常所说的无线电广播,而是指由sendBroadcast()所发送出来的意图(Intent),即广播在这里的意思是意图,BroadcastReceiver在注册(Registe)之后可以自动监听符合预先给定的条件的意图,如果有则会通知此 BroadcastReceiver的持有程序。
  4. ContentProvider:数据支持(外部数据)(官网:http://developer.android.com/reference/android/content/ContentProvider.html,本地:本地SDK/reference/android/content/ContentProvider.html)
  ContentProvider是作保存应用程序数据和建立维持数据库之用,以便程序重新启动时回到以前的状态或者保存信息。应该注意应用程序的使用权限以及SQL语言的使用,Android用的是一个轻量级的数据库系统SQLite。
  5. Intent:意图(活动桥)(官网:http://developer.android.com/reference/android/content/Intent.html,本地:本地SDK/reference/android/content/Intent.html)
Intent是Android应用开发里很重要的一个元件,很多书上以直译来解释,不太好理解,我觉得可以译为“活动桥”,也就是连接两个活动(Activity)的桥梁(Bridge)。通过Intent可以从一个Activity来启动另一个任意的Activity,不管是自己定义的还是系统定义的。在ActivityGroup(extends Activity)里面,Intent的flag设置对于子Activity的启动方式至关重要。
  我觉得不管是学习还是开发,从这5个关键分类入手是比较好的,条理清楚,很容易的抓住重点,也不会产生问题。当然,这5个大类只是Android应用开发里范畴很大的5个方面,其下还有很多很多需要专研的子分类,要想学得很厉害的Android应用开发,还是得专研它们的子方面,就是这样。
后记:初时,项目组给了两个简单的热手题目,一是做Android系统上的简单浏览器,这个东西其实是在SDK文档Hello View中有的例子(官网上的网址:http://developer.android.com/resources/tutorials/views/hello-webview.html,然后是本地的地址:本地SDKdocsguide utorialsviewshello-webview.html,Hello View里面的例子用到时可以好好看看,很好用),当时不知道,就还网上找啊找,找啊找,二是做Android系统上的简单聊天室,这个涉及到服务端与客户端的问题了(PHP服务搭建可见:APMServ搭设PHP服务器http://hi.baidu.com/juwend/blog/item/48890045925be189b2b7dcb5.html),聊天室具体的参考代码我将在以后的文章中写出。
  Android编程五要诀:Activity、Service、BroadcastReceiver、ContentProvider、Intent —— Juwend 笔者水平有限,若有错漏,欢迎指正,欢迎转载以及CV操作,但希注明出处,谢谢!

参考资料:

http://bbs.iandroid.cn/android-9510-1-1.html

更多相关文章

  1. 一个android显示远程txt的代码例子
  2. 天天记录 - Android(安卓)ListView加载图片
  3. android相对布局--计算器的例子
  4. 【移动开发】Android游戏开发SurfaceView应用----手指发动小球(小
  5. 天天记录 - Android(安卓)使用view.ScrollBy实现View随手指移动
  6. [Android]通过JNI访问并操作Bitmap的元素,支持RGB565和ARGB8888
  7. Android(安卓)自定义View 例子一
  8. android背景图片更换――经典例子
  9. android中自定义service的详解(例子)

随机推荐

  1. Android屏幕分辨率
  2. Android按键消息传播流程(WindowManagerSe
  3. android 笔记 --- Android中Menu应用
  4. OrmLite - Lightweight Java ORM Support
  5. TextView的跑马灯效果
  6. Android 4.0 用户输入子系统
  7. Activity 模版样式简介
  8. Android中ExpandableListView的使用
  9. android 对话框(Dialog)使用
  10. Android Sensor Shake(WeChat)