Android 学习笔记 Service (二) Remote Service Sample

本文档详细介绍了如何一步步创建Android的Remote Service。首先从创建一个 HelloWorld 项目开始,然后新建 IRMeoteService.aidl 文件,讲解了为何需要aidl文件以及其作用。接着在RemoteService.java中实现接口,并在MainActivity退出后展示如何继续运行服务,以及如何终止服务。
摘要由CSDN通过智能技术生成

1.一步步的建立Remote Service

0)创建一个helloworld项目。
1)新建文件 IRemoteService.aidl

为什么要建aidl文件,因为在这里我们使用的是Remote Service,从字面Remote就知道Service和Client是分开的(这里我们为了演示方便,把Service和Client的实现都放在一起,但是要时刻想到它们是不在一起的)。

定义Service的是RemoteService.java,那我们怎么在Client客户端引用(import)和调用RemoteService.java里面的内容呢?

aidl是Android interface description language 的缩写,android接口描述语言,类似于C语言里面的头文件,在这个文件里面只描述了接口,方法的参数、返回值等,我们将aidl文件引入我们的客户端实现后,我们就可以操作RemoteService.java的函数了

a)


b)


c)定义一个空的RemoteService接口,后面我们在RemoteService.java里面实现的函数都需要在这里注册。

只有先定义了IRemoteService.aidl,我们在编写RemoteService.java这个service的时候才会有IRemoteService.Stub.



2)编写RemoteService.java

package com.example.siqi;

import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.os.Process;
import android.util.Log;

public class RemoteService extends Service {

	/**
	 * TAG,用于输出Log,在这里,我们把pid,即进程的ID也记录上
	 * 这样就可以比较Service的进程和Client的进程是否在同一进程
	 */
	private static final String TAG = "RemoteService, PID=" + Process.myPid();
	
	/**
	 * 定义RemoteSe
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值