Red de conocimiento informático - Problemas con los teléfonos móviles - La máquina real de Sonic Cloud obtiene directamente la práctica de control de POCO

La máquina real de Sonic Cloud obtiene directamente la práctica de control de POCO

Sitio web oficial de Sonic

Comunidad de usuarios

Actualmente es compatible con POCO-SDK para todos los motores de juegos (Unity3d, serie Cocos2dx, Egret, UE4). Debes acceder al juego antes de usar el SDK. v1.4.0-beta se puede usar después de la actualización ~ (se espera que se actualice después del Primero de Mayo)

Poco es un marco de prueba automatizado entre motores basado en la búsqueda de control de la interfaz de usuario. Admite motores de juegos convencionales: Admite motores de juegos convencionales: Cocos2d-x, Unity3d, aplicaciones nativas de Android

https://poco-chinese.readthedocs.io/en/latest/

En el pasado, para obtener el control de poco, usábamos el cliente Python del marco Airtest o el IDE de Airtest para obtener el control de poco. Sin embargo, dado que Sonic es un lenguaje de desarrollo back-end basado en Java, sería un desperdicio introducir un entorno Python solo para obtener los controles, por lo que intentamos encontrar la respuesta en el nivel SDK. SDK github

Tome Unity3d como ejemplo:

PocoManager.cs

De este archivo podemos ver que el servidor TCP expuesto por el SDK es un protocolo RPC y es público Los métodos son:

Obviamente, lo que necesitamos es el método Dump.

Sin más, el servidor ya está abierto.

A partir de aquí, sabemos que TCPServer obtiene el cuerpo de esta solicitud y luego lo asigna a diferentes métodos según el campo del método.

La identificación del valor de retorno es la identificación de la solicitud y el resultado es el contenido devuelto del método correspondiente. La información que necesitamos se extrae aquí.

Desde aquí podemos saber que TcpServer.cs

Ya sea que envíe o reciba información, la longitud del cuerpo de la información se enviará una vez como encabezado y luego el cuerpo de la solicitud ser enviado. Lo mismo ocurre al recibir información.

Así es como se comunica Sonic:

Entonces, en pocas palabras, el proceso de comunicación no es tan complicado como podría pensar.

Los usuarios tienen altos requisitos para POCO. La función actual es solo para obtener el control del juego. En el futuro, usaremos POCO para trabajar más en la automatización del juego. Gracias por tu interés en Sonic.

Ten en cuenta que POCO es una herramienta muy útil.