La API de Checks puede analizar apps para Android y iOS antes del lanzamiento para que tengas visibilidad de los comportamientos de recopilación y uso compartido de datos de tu app, y de los posibles problemas de cumplimiento antes de lanzarla públicamente.
En esta guía de inicio rápido, se muestra cómo subir una app con la CLI de gcloud y el comando cURL.
Requisitos previos
Antes de comenzar, asegúrate de poder enviar solicitudes autorizadas con nuestra guía de autorización.
Prepara tu paquete de aplicación
Android
Genera un archivo APK o AAB para tu app.
Consulta Cómo compilar y ejecutar tu app en la documentación de Android para obtener instrucciones.
iOS
En Xcode, selecciona un perfil de aprovisionamiento para la app de destino.
En el menú desplegable que aparece, haz clic en Product > Archive. Selecciona el archivo más reciente y, luego, haz clic en Distribute App.
En la ventana que aparece, haz clic en Development > Next.
(Opcional) Para acelerar la compilación, desmarca la opción Rebuild from Bitcode y, luego, haz clic en Next.
Checks no requiere reducir ni volver a compilar la app para ejecutar una prueba, por lo que puedes inhabilitar esta opción de forma segura.
Haz clic en Export y, luego, especifica un directorio en el que quieras descargar el archivo IPA de tu app.
Cómo subir tu paquete de aplicación
Sube tu paquete de aplicación con el media.upload método.
Hay dos formas de subir tu app:
Objeto binario con metadatos
Puedes incluir metadatos, como codeReferenceId que
vincula el análisis con una confirmación específica en tu repositorio de código.
Envía una solicitud POST de varias partes con el encabezado X-Goog-Upload-Protocol: multipart, en la que la primera parte del cuerpo contiene los metadatos como JSON y la segunda parte del cuerpo contiene la carga binaria:
curl -X POST \
-H "X-Goog-User-Project: PROJECT_ID" \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token --scopes=https://www.googleapis.com/auth/checks)" \
-H "X-Goog-Upload-Protocol: multipart" \
-F "metadata={\"codeReferenceId\":\"COMMIT_SHA\"}" \
-F "binary=@BINARY_PATH" \
"https://checks.googleapis.com/upload/v1alpha/accounts/ACCOUNT_ID/apps/APP_ID/reports:analyzeUpload"Solo datos binarios
Envía una solicitud POST normal con el encabezado X-Goog-Upload-Protocol: raw para subir tu app sin metadatos:
curl -X POST \
-H "X-Goog-User-Project: PROJECT_ID" \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token --scopes=https://www.googleapis.com/auth/checks)" \
-H "X-Goog-Upload-Protocol: raw" \
-H "Content-Type: application/octet-stream" \
--data-binary @BINARY_PATH \
"https://checks.googleapis.com/upload/v1alpha/accounts/ACCOUNT_ID/apps/APP_ID/reports:analyzeUpload"Una vez que se termine de subir la app, se mostrará un
google.longrunning.Operation pendiente:
{
"name": "accounts/ACCOUNT_ID/apps/APP_ID/operations/OPERATION_ID"
}
Cómo consultar el estado de tu análisis
Puedes consultar el estado de tu análisis llamando al
accounts.apps.operations.get método:
curl -X GET \
-H "X-Goog-User-Project: PROJECT_ID" \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token --scopes=https://www.googleapis.com/auth/checks)" \
"https://checks.googleapis.com/v1alpha/accounts/ACCOUNT_ID/apps/APP_ID/operations/OPERATION_ID"Se muestra la siguiente respuesta según el estado:
Pendiente
{
"name": "accounts/ACCOUNT_ID/apps/APP_ID/operations/OPERATION_ID"
}
Completado
{
"name": "accounts/ACCOUNT_ID/apps/APP_ID/operations/OPERATION_ID",
"done": true,
"response": {
"@type": "type.googleapis.com/google.checks.report.v1alpha.Report",
"name": "accounts/ACCOUNT_ID/apps/APP_ID/reports/REPORT_ID",
"resultsUri": "https://checks.google.com/console/dashboard/REPORT_ID?a=APP_ID"
}
}
Error
{
"name": "accounts/ACCOUNT_ID/apps/APP_ID/operations/OPERATION_ID",
"done": true,
"error": {
"code": 500,
"message": "Deadline exceeded.",
"status": "INTERNAL",
"details": [
...
]
}
}
Cómo ver tu análisis
Para ver tu análisis, llama al
accounts.apps.reports.get método:
curl -X GET \
-H "X-Goog-User-Project: PROJECT_ID" \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token --scopes=https://www.googleapis.com/auth/checks)" \
"https://checks.googleapis.com/v1alpha/accounts/ACCOUNT_ID/apps/APP_ID/reports/REPORT_ID"De forma predeterminada, esto solo muestra el nombre del recurso del informe y una URL para ver el informe en la consola de Checks.
Para ver más datos, incluye una máscara de campo en la solicitud. Por
ejemplo, agrega el parámetro de consulta de URL fields=name,resultsUri,checks para incluir
el checks campo:
{
"name": "accounts/ACCOUNT_ID/apps/APP_ID/reports/REPORT_ID",
"resultsUri": "https://checks.area120.google.com/console/dashboard/REPORT_ID?a=APP_ID",
"checks": [
{
"type": "DATA_MONITORING_NEW_ENDPOINT",
"severity": "POTENTIAL",
"state": "FAILED",
...
},
...
]
}
Próximos pasos
Consulta Cómo consultar informes para obtener información sobre cómo recuperar los resultados de tu análisis.