grpc / grpc/grpc-java

Extend BinderChannel to support cross-user communication and introduce BinderChannelCredentials (io.grpc.binder.*) in experimental.

Abierto
#10,173 3 comentarios 0 reacciones 0 asignados Ver en GitHub
experimental API
Lenguaje dominante
Java
Estrellas
12.1k
Forks
4k
Merge medio
2 d 17 h
PR fusionados (30 d)
37

Descripción

BinderChannel, as specified in [gRFC L73](https://github.com/grpc/proposal/blob/master/L73-java-binderchannel.md) only supports the cross-process communication within the same Android user. However, some special Android applications need to do cross-user communication either using [Context.bindServiceAsUser](https://developer.android.com/reference/android/content/Context#bindServiceAsUser(android.content.Intent,%20android.content.ServiceConnection,%20int,%20android.os.UserHandle)) or [DevicePolicyManager.bindDeviceAdminServiceAsUser](https://developer.android.com/reference/android/app/admin/DevicePolicyManager#bindDeviceAdminServiceAsUser(android.content.ComponentName,%20android.content.Intent,%20android.content.ServiceConnection,%20int,%20android.os.UserHandle)).

TargetUserHandle is introduced in BinderChannel to enhance this use case. In the meanwhile BinderChannelCredentials is introduced in experimental stage to capture arbitrary arguments needed by DevicePolicyManager or other Android components to establish a binder connection.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza leyendo gRFC L73 y las APIs de Android bindServiceAsUser y bindDeviceAdminServiceAsUser. Luego localiza BinderChannel y el paquete experimental io.grpc.binder; el trabajo estará completo cuando los destinos entre usuarios y BinderChannelCredentials admitan los argumentos arbitrarios necesarios para establecer esas conexiones de Binder.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
android, java
Área
mobile-dev
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.