Omitir la reiniciación de sesión de aplicaciones en dispositivos privados en Device Farm AWS - AWS Device Farm

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Omitir la reiniciación de sesión de aplicaciones en dispositivos privados en Device Farm AWS

La firma de aplicaciones es un proceso que implica firmar digitalmente un paquete de aplicaciones (por ejemplo APK, IPA) con una clave privada antes de poder instalarlo en un dispositivo o publicarlo en una tienda de aplicaciones, como Google Play Store o Apple App Store. Para agilizar las pruebas reduciendo la cantidad de firmas y perfiles necesarios y aumentar la seguridad de los datos en los dispositivos remotos, AWS Device Farm volverá a firmar la aplicación una vez que se haya cargado en el servicio.

Una vez que subas la aplicación a AWS Device Farm, el servicio generará una nueva firma para la aplicación con sus propios certificados de firma y perfiles de aprovisionamiento. Este proceso reemplaza la firma original de la aplicación por la firma de AWS Device Farm. A continuación, la aplicación refirmada se instala en los dispositivos de prueba proporcionados por AWS Device Farm. La nueva firma permite que la aplicación se instale y ejecute en estos dispositivos sin necesidad de los certificados originales del desarrollador.

En iOS, sustituimos el perfil de aprovisionamiento integrado por un perfil comodín y abandonamos la aplicación. Si lo proporciona, añadiremos datos auxiliares al paquete de la aplicación antes de la instalación para que los datos estén presentes en el entorno limitado de su aplicación. La renuncia a la aplicación iOS implica la eliminación de ciertos derechos. Esto incluye el grupo de aplicaciones, los dominios asociados, el Game Center HealthKit, la configuración de accesorios inalámbricos HomeKit, la compra desde la aplicación, el audio entre aplicaciones, Apple Pay, las notificaciones push y la configuración y el control. VPN

En Android, renunciamos a la aplicación. Esto puede interrumpir funciones que dependen de la firma de la aplicación, como Google Maps para AndroidAPI. También puede activar la detección de la piratería y la manipulación, disponible en productos como. DexGuard En el caso de las pruebas integradas, es posible que modifiquemos el manifiesto para incluir los permisos necesarios para capturar y guardar capturas de pantalla.

Cuando utilizas dispositivos privados, puedes saltarte el paso en el que AWS Device Farm vuelve a firmar la aplicación. En los dispositivos públicos es distinto, pues en ellos Device Farm siempre vuelve a firmar la aplicación en las plataformas iOS y Android.

La nueva firma de la aplicación puede omitirse al crear una sesión de acceso remoto o una ejecución de prueba. Esto puede ser útil si la aplicación tiene cierta funcionalidad que se interrumpe cuando Device Farm la vuelve a firmar. Por ejemplo, es posible que las notificaciones de inserción no funcionen después de volver a firmar. Para obtener más información sobre los cambios que realiza Device Farm al probar tu aplicación, consulta AWSDevice Farm FAQs o la página de aplicaciones.

Para omitir la nueva firma de la aplicación para una ejecución de prueba, seleccione Omitir volver a firmar aplicaciones en la página Configurar al crear la ejecución de prueba.

Seleccione Omitir volver a firmar aplicaciones al usar instancias de dispositivo privado en una ejecución de prueba

nota

Si utilizas el XCTest framework, la opción Omitir la refirma de la aplicación no está disponible. Para obtener más información, consulte Trabajando con XCTest iOS y AWS Device Farm.

Los pasos adicionales para configurar la firma de aplicaciones varían, en función de si se utilizan dispositivos privados iOS o Android.

Omisión de la nueva firma de aplicación en dispositivos Android

Si va a probar la aplicación en un dispositivo Android privado, seleccione Omitir volver a firmar aplicaciones al crear la ejecución de prueba o la sesión de acceso remoto. No se necesitan más configuraciones.

Omisión de la nueva firma de aplicación en dispositivos iOS

Apple requiere que firme las aplicaciones para pruebas antes de que se puedan cargar en un dispositivo. En el caso de los dispositivos iOS, dispone de dos opciones para firmar la aplicación.

  • Si utiliza un perfil de desarrollador interno (Enterprise), vaya directamente a la sección siguiente, Creación de una sesión de acceso remoto para confiar en la aplicación de iOS.

  • Si utiliza un perfil de desarrollo de aplicaciones iOS ad hoc, primero debe registrar el dispositivo en su cuenta de desarrollador de Apple y, a continuación, actualizar su perfil de aprovisionamiento para incluir el dispositivo privado. A continuación, debe volver a firmar la aplicación con el perfil de aprovisionamiento que ha actualizado. Después, puede ejecutar la aplicación nuevamente firmada en Device Farm.

Para registrar un dispositivo con un perfil de aprovisionamiento de desarrollo de aplicaciones iOS (Ad-hoc)
  1. Inicie sesión en su cuenta de desarrollador de Apple.

  2. Ve a la sección IDsCertificados y perfiles de la consola.

  3. Vaya a Dispositivos.

  4. Registre el dispositivo en la cuenta de desarrollador de Apple. Para obtener el nombre y el UDID del dispositivo, utilice la ListDeviceInstances operación Device FarmAPI.

  5. Vaya a su perfil de aprovisionamiento y seleccione Editar.

  6. Elija el dispositivo en la lista.

  7. En Xcode, recupere el perfil de aprovisionamiento actualizado y, a continuación, vuelva a firmar la aplicación.

No se necesitan más configuraciones. Ahora puede crear una sesión de acceso remoto o una ejecución de prueba y seleccionar Omitir volver a firmar aplicaciones.

Creación de una sesión de acceso remoto para confiar en la aplicación de iOS

Si utiliza un perfil de aprovisionamiento de desarrollador interno (Enterprise), debe llevar a cabo un procedimiento único para confiar en el certificado de desarrollador de aplicaciones interno en cada uno de los dispositivos privados.

Para ello, puede instalar la aplicación que desea probar en el dispositivo privado o bien puede instalar una aplicación ficticia que esté firmada con el mismo certificado que la aplicación que desea probar. La instalación de una aplicación ficticia firmada con el mismo certificado tiene una ventaja. Una vez que se confía en el desarrollador del perfil de configuración o de aplicaciones empresariales, se confía en todas las aplicaciones de ese desarrollador en el dispositivo privado hasta que se eliminan. Por lo tanto, cuando cargue una nueva versión de la aplicación que desea probar, no tendrá que volver a confiar en el desarrollador. Esto resulta muy útil si ejecuta automatizaciones de prueba y no desea crear una sesión de acceso remoto cada vez que pruebe la aplicación.

Antes de iniciar la sesión de acceso remoto, siga los pasos en Creación de un perfil de instancia para crear o modificar un perfil de instancia en Device Farm. En el perfil de instancia, añada el ID de paquete de la aplicación de prueba o la aplicación ficticia a Excluir paquetes de la limpieza. A continuación, asocie este perfil de instancia a la instancia de dispositivo privado para asegurarse de que Device Farm no quita esta aplicación del dispositivo antes de iniciar una nueva ejecución de prueba. De este modo, se garantiza que su certificado de desarrollador sigue siendo de confianza.

Puede cargar la aplicación ficticia en el dispositivo mediante una sesión de acceso remoto, lo que le permite lanzar la aplicación y confiar en el desarrollador.

  1. Siga las instrucciones de Crear una sesión para crear una sesión de acceso remoto que utilice el perfil de instancia de dispositivo privado que ha creado. Al crear la sesión, asegúrese de seleccionar Omitir volver a firmar aplicaciones.

    Omitir la nueva firma de aplicación al crear una sesión de acceso remoto

    importante

    Para filtrar la lista de dispositivos de forma que solo incluya dispositivos privados, seleccione Solo instancias de dispositivos privados para asegurarse de que está utilizando un dispositivo privado con el perfil de instancia correcto.

    Asegúrese también de añadir la aplicación ficticia o la aplicación que desea probar a Excluir paquetes de la limpieza en el perfil de instancia asociado a esta instancia.

  2. Cuando se inicie la sesión remota, seleccione Elegir archivo para instalar una aplicación que utiliza su perfil de aprovisionamiento interno.

  3. Lance la aplicación que acaba de cargar.

  4. Siga las instrucciones para confiar en el certificado de desarrollador.

Todas las aplicaciones del desarrollador del perfil de configuración o de aplicaciones empresariales son ya de confianza en este dispositivo privado hasta que las elimine.