Red de conocimiento informático - Problemas con los teléfonos móviles - Serie RN: Cómo interactúan y se comunican Android nativo y RN

Serie RN: Cómo interactúan y se comunican Android nativo y RN

Los saltos de página y las llamadas a métodos de React Native en proyectos híbridos de Android se pueden describir aproximadamente en el esquema anterior:

El principio de comunicación de RN es simplemente que el nativo de una parte (java) registra algunos métodos en una tabla de mapeo, y la otra parte (js) luego busca y llama a los métodos correspondientes en esta tabla de mapeo, y Bridge actúa como un puente entre los dos.

De hecho, hay dos tipos de llamadas a métodos:

La llamada de RN a Android requiere el mismo nombre de módulo y nombre de método, mientras que la llamada de Android a RN solo requiere el mismo nombre de método.

(1) Método de evento RCTDeviceEventEmitter

Ventajas: se puede entregar en cualquier momento, controlado localmente.

(2) Devolución de llamada

Ventajas: llamada JS, devolución local: llamada JS, devolución local.

Desventajas: la devolución de llamada es una operación asincrónica y el tiempo de devolución es incierto.

(3) Promesa

Ventajas: llamada JS, devolución local: JS. Llamada, devolución local.

? Desventaja: JS se llama una vez cada vez

(4) Pasar directamente datos constantes (RN nativo)

¿Pasar valores entre dominios, únicamente? De local a RN, RN puede pasar NativeModules.[nombre del módulo].[nombre del parámetro].

Nota: Cuando la capa RN llama a la capa NativeModule para saltar a la interfaz, se debe configurar el indicador FLAG_ACTIVITY_NEW_TASK.

Por ejemplo, tome las llamadas nativas RN y las llamadas RN nativas como ejemplo, breve descripción:

Necesita agregar dos bibliotecas de carga de imágenes de Facebook: (Tenga en cuenta que el número de versión debe ser coherente con el RN que está utilizando (la versión debe ser coherente y la versión fresca utilizada internamente siempre debe ser coherente)