Mit der Checks API können Android- und iOS-Apps vor der Veröffentlichung analysiert werden. So erhalten Sie Einblick in die Datenerhebung und ‑weitergabe Ihrer App sowie in potenzielle Compliance-Probleme, bevor Sie Ihre App öffentlich starten.
In dieser Kurzanleitung erfahren Sie, wie Sie eine App mit der gcloud CLI und dem cURL-Befehl hochladen.
Vorbereitung
Bevor Sie beginnen, müssen Sie autorisierte Anfragen senden können. Weitere Informationen finden Sie in unserem Autorisierungsleitfaden.
App-Bundle vorbereiten
Android
Generieren Sie eine APK- oder AAB-Datei für Ihre App.
Eine Anleitung finden Sie in der Android-Dokumentation unter Build and run your app (App erstellen und ausführen).
iOS
Wählen Sie in Xcode ein Bereitstellungsprofil für die Ziel-App aus.
Klicken Sie im Drop-down-Menü auf Product > Archive (Produkt > Archiv). Wählen Sie das neueste Archiv aus und klicken Sie dann auf Distribute App (App verteilen).
Klicken Sie im angezeigten Fenster auf Development > Next (Entwicklung > Weiter).
Optional: Wenn Sie einen schnelleren Build erhalten möchten, deaktivieren Sie die Option Rebuild from Bitcode (Aus Bitcode neu erstellen) und klicken Sie dann auf Next (Weiter).
Für Checks ist es nicht erforderlich, Ihre App zu verkleinern oder neu zu erstellen, um einen Test auszuführen. Sie können diese Option also gefahrlos deaktivieren.
Klicken Sie auf Exportieren und geben Sie dann ein Verzeichnis an, in das Sie die IPA-Datei Ihrer App herunterladen möchten.
App-Bundle hochladen
Laden Sie Ihr App-Bundle mit der media.upload Methode hoch.
Es gibt zwei Möglichkeiten, Ihre App hochzuladen:
Binär mit Metadaten
Sie können Metadaten wie die codeReferenceId einfügen, die
die Analyse mit einem bestimmten Commit in Ihrem Code-Repository verknüpft.
Senden Sie eine mehrteilige POST-Anfrage mit dem Header X-Goog-Upload-Protocol: multipart. Der erste Teil des Texts enthält die Metadaten als JSON und der zweite Teil den binären Upload:
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"Nur binär
Senden Sie eine reguläre POST-Anfrage mit dem Header X-Goog-Upload-Protocol: raw, um Ihre App ohne Metadaten hochzuladen:
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"Sobald der Upload Ihrer App abgeschlossen ist, wird ein ausstehender
google.longrunning.Operation zurückgegeben:
{
"name": "accounts/ACCOUNT_ID/apps/APP_ID/operations/OPERATION_ID"
}
Status der Analyse prüfen
Sie können den Status Ihrer Analyse prüfen, indem Sie die
accounts.apps.operations.get Methode aufrufen:
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"Je nach Status wird die folgende Antwort zurückgegeben:
Ausstehend
{
"name": "accounts/ACCOUNT_ID/apps/APP_ID/operations/OPERATION_ID"
}
Abgeschlossen
{
"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"
}
}
Fehler
{
"name": "accounts/ACCOUNT_ID/apps/APP_ID/operations/OPERATION_ID",
"done": true,
"error": {
"code": 500,
"message": "Deadline exceeded.",
"status": "INTERNAL",
"details": [
...
]
}
}
Analyse ansehen
Rufen Sie die
accounts.apps.reports.get Methode auf, um Ihre Analyse anzusehen:
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"Standardmäßig werden nur der Name der Berichtsressource und eine URL zurückgegeben, über die Sie den Bericht in der Checks Console aufrufen können.
Wenn Sie weitere Daten sehen möchten, fügen Sie in der Anfrage eine Feldmaske ein. Fügen
Sie beispielsweise den URL-Abfrageparameter fields=name,resultsUri,checks hinzu, um
das checks Feld einzufügen:
{
"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",
...
},
...
]
}
Nächste Schritte
Unter Berichte abfragen erfahren Sie, wie Sie die Ergebnisse Ihrer Analyse abrufen.