Android四大组件之服务

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 11:54 点击:

 

很多情况下,一些与用户很少需要产生交互的应用程序,我们一般让它们在后台运行就行了,而且在它们运行期间我们仍然能运行其他的应用。

为了处理这种后台进程,Android引入了Service的概念。Service在Android中是一种长生命周期的组件,它不实现任何用户界面。

基本概念

Ÿ   Service是一种在后台运行,没有界面的组件,由其他组件调用开始。

 

Ÿ   创建Service,定义类继承Service,AndroidManifest.xml中定义<service>

 

Ÿ   开启Service,在其他组件中调用startService方法

 

Ÿ   停止Service,调用stopService方法

 

1.在activity中调用service

 

 

/* 

 * 开启服务 

 */ 

public void start(View view) { 

    Intent intent = new Intent(this, MyService.class); 

    startService(intent); 

/* 

 * 结束服务 

 */ 

public void stop(View view) { 

    Intent intent = new Intent(this, MyService.class); 

    stopService(intent); 

2.定义Service:

 

 

public class MyService extends Service { 

 

    /*

     * 绑定时调用

     */ 

    public IBinder onBind(Intent intent) { 

        return null; 

    } 

 

    /*

     * 开启服务时调用

     */ 

    public void onCreate() { 

        super.onCreate(); 

        System.out.println("onCreate"); 

    } 

 

    /*

     * 结束服务时调用

     */ 

    public void onDestroy() { 

        super.onDestroy(); 

        System.out.println("onDestroy"); 

    } 

 

3.在清单文件中进行定义服务:<service android:name=".PMyService" />

 

电话录音

 

电话录音是使用服务来实现的,在后台运行,使用监听器来监听电话的状态,当来电话时,监听器获取到来电话的电话号码,当用户接听后,就开始录音,当监听到电话的状态挂断后,停止录音,并将录音保存到sdcard中。

 

java代码:

 

 

@Override 

public void onCreate() { 

    //拿到电话服务 

    TelephonyManager manager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); 

     

    //电话的状态监听器 

    manager.listen(new MyListener(), PhoneStateListener.LISTEN_CALL_STATE); 

 

private final class MyListener extends PhoneStateListener { 

    private String num; 

    private MediaRecorder recorder;   //录音 

    private File file; 

    public void onCallStateChanged(int state, String incomingNumber) { 

        switch (state) { 

            //响铃状态 

            case Tel

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • Android 完全退出程序
    • 原创:Android应用开发-Andorid歌词秀,含源码
    • android 屏幕保护
    • Android手机软件汉化教程---第四课 dex文件汉化
    • 众多Android 开源项目推荐,给力工作给力学习
    • Android Audio代码分析4
    • Android得到已安装的应用程序信息!
    • Android开发者指南(29) —— USB Host and Accessory
    • Android成长的幕后推手:工程师鲁宾
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1