安卓Android教程与源码

  Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用"安卓"或"安致"。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。

  安卓Android是一个移动开发平台,包括Linux操作系统 Java中间件和一些关键服务与丰富的API。Linux kernl + dalvik JVM虚机机。

  安卓开发需要安卓SDK,使用Eclipse开发和相应插件。

  安卓开发之前,首先需要搞明白构建块,不但完成java代码,还有一些配置:

Activity

  编写安卓应用程序是从一个Activity开始。 Activities活动系列类似扑克牌,只能有一个是活动的,只能有一个是可见的,新的活动总是在最前面,类似windows的窗口概念。每个活动代表一个应用程序,类似MVC模式中Controller。正如Struts的Action必须配置XML一样,Activity类必须在AndroidManifest.xml中注册方可使用。

下面是Activity生命周期:

Activity有三个状态:

  1. 活动的Activity:当它在屏幕前台时(位于当前任务堆栈的顶部),它是激活或运行状态。
  2. 暂停Activity:当它失去焦点但仍然对用户可见时,它处于暂停状态。
  3. 停止Activity:完全被另一个Activity覆盖时则处于停止状态。

Activity的相应按键和触屏两种事件:

  1. 键按下 :boolean onKeyDown(int keyCode, KeyEvent event)
  2. 重复按键:boolean onKeyMultiple(int keyCode, int repeatCount, KeyEvent event)
  3. 长按键:boolean onKeyLongPress(int keyCode, KeyEvent event)
  4. 按键释放:boolean onKeyUp(int keyCode, KeyEvent event)
  5. 触屏事件:boolean onTouchEvent(MotionEvent event)

事件的消费者是通过View的setOnXXXListener()

  1. OnClickListener 监听点按
  2. OnKeyListener 监听键按下
  3. OnCreateContextMenuListener
  4. OnLongClickListener 监听长按
  5. OnFocusChangeListener
  6. OnTouchListener

View视图

用户界面是由View和ViewGroup对象构成。一个Activity可以包含几种这种界面组合:

实现只要继承android.view.View类。如下代码:

public class PKbestEventActivity extends Activity implements OnTouchListener {  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
    //在Activity中启动一个View视图界面 在屏幕上绘制View界面
        setContentView(R.layout.main);  
        TextView tv = (TextView) findViewById(R.id.tv);
        tv.setOnTouchListener(this);  
    }  
    public boolean onTouch(View v, MotionEvent event) {  
     //处理消费touch事件。
        return false;  
    }  
}  

Intent意图

  Intent提供了一种通用的消息系统,相当于消息或事件,它允许在你的应用组件如Activity与其它的应用组件间传递Intent来执行动作和产生事件。比如如果要在两个Activity之间切换,实际效果是两个界面之间切换,:

Intent intent = new Intent();
intent.setClass(A.this, B.class);
startActivity(intent);//开始新的Activity
A.this.finish();//关闭A的Activity

Intent有显式和隐式区分。

安卓的应用组件有四种类型:

  1. Activity:最基本的模块,称之为"活动";控制视图、监听系统事件、启动其他的Activity、Service等
  2. ContentProvider:操作共享数据的标准组件。实现CRUD增删改查。
  3. Service:后台运行的"服务"程序, 通常用来播放媒体文件或检测设备状态等无需界面的任务,不能自己运行,需通过Activity或Context对象来启动: Context.startService() 和 Context.bindService()。
  4. BroadcastReceiver :对外部的事件做出响应的组件;没有界面,只能通过NotificationManager来通知用户事情发生了。既可在xml中注册, 也可在代码中用Context.registerReceiver()注册。

 

更多更详细的应用见下面源码:

教程

安卓helloworld起步第一个项目源码

安卓开发教程之二 建立一个简单应用

安卓开发教程之三 开始一个新的Activity

安卓实战案例入门教程

安卓服务Service教程

安卓样式Style和主题Themes案例源码

安卓Fragment开发教程与源码下载 建立一个简单应用

使用sharedpreferences在Android存储对象

在安卓中使用缓存和脱机存储

10种提升安卓运行效率的建议

安卓穿戴安装入门教程

使用安卓Material Design开发一个天气应用

RxJava教程

使用React Native开发第一个iOS应用

 

源码下载

安卓基础核心功能源码

安卓界面控制方面源码汇总

安卓视图View方面源码汇总

安卓布局layout方面源码汇总

安卓仪表盘dashboard设计模式

安卓依赖注入和测试库

使用Gson实现安卓JSON解析源码与教程

安卓HTTP摄像预览源码

安卓GPS定位源码

文本自动朗读源码

安卓首选项源码

在安卓中编程拨打电话案例源码

安卓声音管理器案例与源码

安卓蓝牙控制案例源码

安卓开发工具库包集锦

参考

安卓更多专题

苹果Swift语言简明教程

最好的移动开发工具介绍

JavaEE教程