当前位置: 网学 > 编程文档 > Android > 正文

android Service Binder交互通信实例

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/19
下载{$ArticleTitle}原创论文样式

 android SDK提供了Service,用于类似*nix守护进程或者windows的服务。

 Service有两种类型: 1.本地服务(Local Service):用于应用程序内部 2.远程服务(Remote Sercie):用于android系统内部的应用程序之间 前者用于实现应用程序自己的一些耗时任务,比如查询升级信息,并不占用应用程序比如Activity所属线程,而是单开线程后台执行,这样用户体验比较好。 后者可被其他应用程序复用,比如天气预报服务,其他应用程序不需要再写这样的服务,调用已有的即可。    编写不需和Activity交互的本地服务示例本地服务编写比较简单。首先,要创建一个Service类,该类继承android的Service类。这里写了一个计数服务的类,每秒钟为计数器加一。在服务类的内部,还创建了一个线程,用于实现后台执行上述业务逻辑。     package com.easymorse; import android.app.Service;import android.content.Intent;import android.os.IBinder;import android.util.Log; public class CountService extends Service {     private boolean threadDisable;     private int count;     @Override    public IBinder onBind(Intent intent) {        return null;    }     @Override    public void onCreate() {        super.onCreate();        new Thread(new Runnable() {             @Override            public void run() {                while (!threadDisable) {                    try {                        Thread.sleep(1000);                    } catch (InterruptedException e) {                    }                    count++;                    Log.v("CountService", "Count is " + count);                }            }        }).start();    }     @Override    public void onDestroy() {        super.onDestroy();        this.threadDisable = true;        Log.v("CountService", "on destroy");    }     public int getCount() {        return count;    } }  需要将该服务注册到配置文件AndroidManifest.xml中,否则无法找到: <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"   &

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号