目录

  • 1 Android说课
    • 1.1 课程简介
    • 1.2 课程的定位与目标
    • 1.3 课程的设计理念与思路
    • 1.4 课程内容的选取与教学组织的安排
    • 1.5 课程的教学模式与教学方法
    • 1.6 课程教学资料
    • 1.7 课程特色
  • 2 Android项目结构
    • 2.1 项目开发
  • 3 Button的用法
    • 3.1 Button的用法
    • 3.2 内部类方法处理按钮单击事件
  • 4 Android入门
    • 4.1 Android的发展史
    • 4.2 Android的系统构架
    • 4.3 搭建Android开发环境
    • 4.4 创建Android应用程序
  • 5 Activity初步
    • 5.1 Activity启动流程
    • 5.2 Activity与布局文件间的关系
    • 5.3 Activity当中获取代表控件对象
  • 6 AcitonBar与菜单
    • 6.1 ActionBar的作用
    • 6.2 各版本的菜单对比
  • 7 控件布局
    • 7.1 控制布局的概念
    • 7.2 相对布局管理器
  • 8 Activity详解
    • 8.1 Actibity初步
    • 8.2 认识Intent
  • 9 列表控件
    • 9.1 Android列表用途
    • 9.2 用ArrayAdapter显示数据
    • 9.3 列表项布局设计
    • 9.4 下拉视图Spinner
  • 10 对话框
    • 10.1 Toast提示框
    • 10.2 Dialog对话框
    • 10.3 特色对话框
    • 10.4 自定义对话框
    • 10.5 构建Notification
  • 11 Service
    • 11.1 关于service
    • 11.2 范例:定义后台服务
    • 11.3 剪贴板服务
  • 12 Android线程
    • 12.1 message,looper, handler类的关系
    • 12.2 范例:消息传递 —— 自动更新文本
  • 13 Pending Intent
    • 13.1 认识PendingIntent
    • 13.2 范例:发送通知 —— Notification
  • 14 广播机制:Broadcast
    • 14.1 范例:广播组件的定义结构
  • 15 存储数据
    • 15.1 SharedPreferences存储
    • 15.2 文件存储
    • 15.3 SQLite数据库存储
    • 15.4 ContentProvider存储
    • 15.5 网络存储
范例:定义后台服务




范例:定义用户的Service组件  MyServiceUtil.java 











范例:定义布局管理器

配置Service

一个Service程序编写完成之后还需要在项目中的AndroidManifest.xml文件之中进行注册,在<application>节点下添加如下的代码: <service android:name=".MyServiceUtil" /> 。

绑定Service 

当一个Service启动之后,如果没有出现意外以及明确的调用stopService()方法的话则将会一直驻留在手机的服务之中,如果现在希望被一个Activity启动的Service可以在Activity程序结束后自动结束,则可以将一个Activity和Service进行绑定,在Activity类中专门提供了一个用于绑定Service的bindService()方法,但是在此方法返回的是一个android.content.ServiceConnection接口的参数。 

ServiceConnection接口定义的方法 

IBinder接口 

ServiceConnection接口主要的功能是当一个Activity程序与Service建立连接之后,可以通过ServiceConnection接口执行Service连接(或取消)连接的处理操作,在Activity连接到Service程序上之后,会触发Service类中的onBind()方法,在此方法中要返回一个android.os.IBinder接口的对象。

IBinder接口的常量和方法 

范例:解决bug

如果现在没有服务与Activity进行绑定而又调用了解除绑定操作,则会出现错误,所以在解除绑定之前必须要增加一个判断,即:判断一个Activity是否和一个Service绑定在了一起,如果绑定在了一起才可以使用unbindService()方法解除绑定。一般的做法是定义一个标记性的操作接口,而后在Activity中判断此接口对象是否为null来决定是否绑定了Service,这样说比较抽象,下面通过一个实际的代码来观察,本程序为了方便,只提供了绑定服务与解除绑定两个操作。

数据库定义后台功能说明