如何在Android系统服务中提供RPC接口?

时间:2019-07-09 09:06:38

标签: android rpc

我正在开发一个(本机)服务进程,其可执行文件位于 Android 8.1 / 9.0上的系统分区。我们称这个过程为S 应该为可执行文件的进程V提供RPC服务 驻留在供应商分区上。我从Android Treble架构中读取 通过HIDL将系统组件与供应商组件分开 接口。我应该在HIDL中使用回调接口来适应 我的需要,还是应该使用其他机制,例如AIDL?

1 个答案:

答案 0 :(得分:0)

是的,您需要将Hardware Binder上下文与HIDL一起使用。

背景:现在有三个Binder上下文:

  1. 框架活页夹(/dev/binder
    这仅适用于系统/框架方面的IPC。此活页夹上下文使用AIDL
  2. 供应商活页夹(/dev/vndbinder
    这仅适用于供应商方的IPC。此活页夹上下文也使用AIDL
  3. 硬件绑定程序(/dev/hwbinder
    此上下文允许将来自供应商方的服务与来自系统/框架方的服务连接起来。由于Trebles的目标是允许分别更新系统分区和供应商分区,因此AIDL不再足够安全。因此,HIDL被引入并在此上下文中使用。