Docs de Autonomy
Móvil

Builds móviles

Construye, archiva y sube una app para Simulador de iOS o un APK de Android para que Autonomy pueda ejecutar recorridos móviles sobre ella.

Las ejecuciones móviles de Autonomy necesitan una build de tu app. Sube esa build una vez y reutilízala en ejecuciones manuales, ejecuciones de pull request y ejecuciones programadas hasta que se publique la siguiente versión.

Qué subir

VariableRequiredDescription
iOS .app (.zip, .tgz, .tar.gz)NoBundle .app para Simulador, archivado con la app en la raíz. Aceptado por el panel y la API de artefactos.
Android .apkNoPaquete de Android estándar. Aceptado por el panel y la API de artefactos.
Android .aabNoAndroid App Bundle. Aceptado por el panel y la API de artefactos.

Para iOS, Autonomy necesita una build de Simulador porque las ejecuciones se realizan en simuladores en la nube. Un .ipa firmado construido para iphoneos será rechazado por el runner. Para Android, se aceptan tanto .apk como .aab; las ejecuciones instalan el artefacto en un emulador en la nube y lo lanzan por su nombre de paquete.

Construir para Simulador de iOS

Para un proyecto Xcode estándar, construye con xcodebuild:

Construir el .app para Simulador de iOSbash
xcodebuild -workspace ios/MyApp.xcworkspace \
-scheme MyApp \
-configuration Release \
-sdk iphonesimulator \
-destination 'generic/platform=iOS Simulator' \
-derivedDataPath ios/build \
build

El bundle queda en ios/build/Build/Products/Release-iphonesimulator/MyApp.app. Para proyectos Expo o React Native, ejecuta primero npx expo prebuild --platform ios y luego el mismo comando xcodebuild sobre el workspace generado.

Para subidas desde el panel y la API directa, archiva el bundle antes de enviarlo. Mantén el bundle .app en la raíz del archivo para que Autonomy pueda desempaquetarlo sin adivinar.

Comprimir el bundle .appbash
cd ios/build/Build/Products/Release-iphonesimulator
zip -r MyApp.app.zip MyApp.app

Construir para Android

Para un proyecto Android estándar, construye un APK de debug desde la raíz del proyecto. Los APK de debug se instalan en emuladores sin firma.

Construir el APK de debugbash
./gradlew assembleDebug

El APK queda en android/app/build/outputs/apk/debug/app-debug.apk. Para proyectos Expo o React Native, ejecuta primero npx expo prebuild --platform android y luego el mismo comando Gradle sobre el proyecto generado.

Para builds de App Bundle, usa ./gradlew bundleDebug y recoge el .aab de android/app/build/outputs/bundle/debug/. Ambos formatos funcionan.

Subir desde el panel

  1. Abre el proyecto y cambia a la pestaña Mobile.
  2. Haz clic en Examinar archivos y selecciona el .app.zip / .app.tar.gz (iOS) o el .apk / .aab (Android).
  3. Espera a que termine el procesamiento de la build.
  4. Abre el test y elige la build subida en Subida de app.
  5. Para los tests de Android, confirma que el nombre del paquete coincide con el APK. Autonomy lo lee del manifiesto, pero puedes anularlo en el test.
  6. Ejecuta el test manualmente una vez para confirmar que la build arranca y que el recorrido llega al primer punto de control.

Subir con la API de artefactos

Para CI o agentes, usa /api/artifacts/upload-url para obtener una URL de subida, sube el archivo a esa URL, llama a /api/artifacts/scan con el storageId devuelto y después pasa ese storageId a /api/trigger.

Para el esquema de endpoints y las respuestas, consulta Artefactos en la referencia de API.

Para Android, pasa platforms: ["android"], targets.android.storageId y targets.android.packageName. Para iOS, pasa platforms: ["ios"], targets.ios.storageId y targets.ios.bundleId. Si tu CI ya entrega una URL HTTPS temporal, puedes omitir la subida y usar artifactUrl con sourceMode: "url".

Limitaciones

  • iOS se ejecuta solo en Simuladores en la nube. La cámara, las solicitudes biométricas (Face ID, Touch ID) y cualquier flujo que requiera una build firmada para dispositivo no funcionarán.
  • Android se ejecuta en emuladores en la nube. Las funciones solo de hardware (NFC, huella dactilar, cámara real) no se simulan.

Solución de problemas

La subida de iOS se rechaza como build de dispositivo

Confirma que la build se produjo con -sdk iphonesimulator y un destino de Simulador. Un bundle producido para iphoneos es una build de dispositivo y Autonomy la rechazará al subir.

La subida de Android se rechaza como formato incorrecto

Autonomy solo acepta .apk y .aab. Cualquier otro formato se rechaza en el momento de la subida.

El test no encuentra la build subida

La build se subió pero nunca se adjuntó al test. Abre el test y elige la build subida en Subida de app antes de ejecutarlo.

CI llena las subidas

Usa entornos guardados para builds que deban reutilizarse y targets explícitos para artefactos temporales de CI. Reserva las subidas del panel para builds que un responsable de versión elige para las ejecuciones de producción.

On this page