任何人都可以向我解释这个活页夹类和方法
public class LocalBinder extends Binder
{
CC2540Service getService()
{
return CC2540Service.this;
}
}
@Override
public IBinder onBind(Intent arg0)
{
return binder;
}
private final IBinder binder = new LocalBinder();
我真的不明白这段代码
提前致谢
答案 0 :(得分:2)
我猜测LocalBinder是CC2540Service的内部类。所以CC2540Service.this是指CC2540Service的实例。 所以它等同于这段代码
class A {
A a = this;
class B {
A getA() {
return a;
}
}
B getB() {
return new B();
}
}
答案 1 :(得分:2)
要从服务发送和接收数据,您需要使用Binder
对象。
名为CC2540Service的服务只是创建此对象,并在Activity
尝试绑定到此服务时向其返回一个标记。
两个进程可以在一个进程之间传输数据的唯一方法是使用这些Binder
令牌。在您的情况下,令牌通过return binder;