如果服务Service和Activity在同一个应用里,我们可以按照上一篇文章记录里的那样去控制,但是如果不在一个应用中,那该如何控制呢?例如阿里客户端,不仅仅是在淘宝网上可以支付,在其他地方支付页面(游戏购买道具页面等),第三方工具都可以打开使用。
1、新建第一个工程:支付宝安全支付
XML布局文件和Activity中没有任何操作,新建一个接口Iservice.java
package com.example.study;
public interface Iservice {
public void callMethodInService();
}
找到源文件的存储位置,将Iservice.java文件的后缀名改成.aidl,再返回编辑页面,刷新就可以看到文件会报错,为什么呢?因为AIDL本身就是为了别的程序调用的,所以不需要加上public或者private等修饰,去掉之后如下:
package com.example.study;
interface Iservice {
void callMethodInService();
}刷新之后可以看到,在gen目录的包下,已经生产了Iservice.java的文件,这个是系统自动生成的,不用管。
2、新建一个Service文件,如下:
public class PayService extends Service{
@Override
public IBinder onBind(Intent intent

这篇博客介绍了如何在Android中使用AIDL(Android Interface Definition Language)来绑定远程服务。首先,创建了一个名为‘支付宝安全支付’的工程,定义了Iservice接口。接着,新建了一个Service文件来实现该接口。然后,创建了另一个工程‘游戏支付’,在此工程的布局文件中添加了用于绑定服务和调用服务方法的按钮,并通过拷贝Iservice.aidl文件并生成对应的Java类来完成服务的交互。
最低0.47元/天 解锁文章
912

被折叠的 条评论
为什么被折叠?



