请参阅本绑定服务文档中的示例:https://developer.android.com/guide/components/bound-services.html
Binder是一个实现IBinder接口的类。但是,在示例中,我无法理解为什么我们使用IBinder mBinder
而不是Binder mBinder
?为什么用 IBinder 让它更复杂?为什么我们需要 LocalBinder 类才能返回 LocalService 的实例?
答案 0 :(得分:1)
你不需要这样做。如果要存储LocalBinder,则可以。如果要为每个客户端绑定返回一个新的Binder实例,则可以。您需要做的唯一事情是如果您希望它可以绑定到您,则返回非null(如果您希望服务仅通过startService而不是通过bindService工作,则可以返回null)。