Checks API, Android और iOS ऐप्लिकेशन को रिलीज़ करने से पहले उनका विश्लेषण कर सकता है. इससे आपको यह पता चलता है कि आपका ऐप्लिकेशन, डेटा इकट्ठा करने और उसे शेयर करने से जुड़ी गतिविधियों को कैसे मैनेज करता है. साथ ही, ऐप्लिकेशन को सार्वजनिक तौर पर लॉन्च करने से पहले, आपको संभावित अनुपालन समस्याओं के बारे में भी पता चलता है.
इस क्विकस्टार्ट में, gcloud CLI और cURL कमांड का इस्तेमाल करके ऐप्लिकेशन अपलोड करने का तरीका बताया गया है.
ज़रूरी शर्तें
शुरू करने से पहले, पक्का करें कि अनुमति से जुड़ी हमारी गाइड का इस्तेमाल करके, अनुमति वाले अनुरोध भेजे जा सकते हों.
अपना ऐप्लिकेशन बंडल तैयार करना
Android
अपने ऐप्लिकेशन के लिए APK या AAB फ़ाइल जनरेट करें.
निर्देशों के लिए, Android के दस्तावेज़ में अपना ऐप्लिकेशन बनाएं और चलाएं देखें.
iOS
Xcode में, टारगेट ऐप्लिकेशन के लिए कोई प्रोविज़निंग प्रोफ़ाइल चुनें.
दिखने वाले ड्रॉप-डाउन मेन्यू में, प्रॉडक्ट > संग्रह करें पर क्लिक करें. सबसे नया संग्रह चुनें. इसके बाद, ऐप्लिकेशन डिस्ट्रिब्यूट करें पर क्लिक करें.
इसके बाद, स्क्रीन पर दिखने वाली विंडो में, डेवलपमेंट > अगला पर क्लिक करें.
(ज़रूरी नहीं) तेज़ी से बिल्ड करने के लिए, बिटकोड से फिर से बनाएं विकल्प से सही का निशान हटाएं. इसके बाद, आगे बढ़ें पर क्लिक करें.
जांच करने के लिए, आपके ऐप्लिकेशन को छोटा करने या फिर से बनाने की ज़रूरत नहीं होती. इसलिए, इस विकल्प को सुरक्षित तरीके से बंद किया जा सकता है.
एक्सपोर्ट करें पर क्लिक करें. इसके बाद, वह डायरेक्ट्री चुनें जहां आपको अपने ऐप्लिकेशन की IPA फ़ाइल डाउनलोड करनी है.
अपना ऐप्लिकेशन बंडल अपलोड करना
media.upload
तरीके का इस्तेमाल करके, अपना ऐप्लिकेशन बंडल अपलोड करें.
ऐप्लिकेशन अपलोड करने के दो तरीके हैं:
मेटाडेटा के साथ बाइनरी
मेटाडेटा में, codeReferenceId
जैसे डेटा को शामिल किया जा सकता है. यह डेटा, विश्लेषण को आपकी कोड रिपॉज़िटरी में किसी खास कमिट से लिंक करता है.
हेडर X-Goog-Upload-Protocol: multipart
के साथ मल्टीपार्ट POST अनुरोध भेजें. इसमें पहले बॉडी पार्ट में JSON के तौर पर मेटाडेटा और दूसरे बॉडी पार्ट में बाइनरी अपलोड शामिल है:
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"
सिर्फ़ बाइनरी
मेटाडेटा के बिना अपना ऐप्लिकेशन अपलोड करने के लिए, हेडर X-Goog-Upload-Protocol: raw
के साथ सामान्य POST अनुरोध भेजें:
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"
ऐप्लिकेशन अपलोड हो जाने के बाद, 'लंबित है' google.longrunning.Operation
स्टेटस दिखता है:
{
"name": "accounts/ACCOUNT_ID/apps/APP_ID/operations/OPERATION_ID"
}
विश्लेषण की स्थिति देखना
accounts.apps.operations.get
तरीके को कॉल करके, विश्लेषण की स्थिति देखी जा सकती है:
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"
स्टेट के आधार पर, यह जवाब मिलता है:
मंज़ूरी बाकी है
{
"name": "accounts/ACCOUNT_ID/apps/APP_ID/operations/OPERATION_ID"
}
पूरा हुआ
{
"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"
}
}
गड़बड़ी
{
"name": "accounts/ACCOUNT_ID/apps/APP_ID/operations/OPERATION_ID",
"done": true,
"error": {
"code": 500,
"message": "Deadline exceeded.",
"status": "INTERNAL",
"details": [
...
]
}
}
विश्लेषण देखना
accounts.apps.reports.get
तरीके को कॉल करके, अपना विश्लेषण देखें:
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"
डिफ़ॉल्ट रूप से, यह सिर्फ़ रिपोर्ट के संसाधन का नाम और Checks Console में रिपोर्ट देखने के लिए यूआरएल दिखाता है.
ज़्यादा डेटा देखने के लिए, अनुरोध में फ़ील्ड मास्क शामिल करें. उदाहरण के लिए, checks
फ़ील्ड को शामिल करने के लिए, यूआरएल क्वेरी पैरामीटर fields=name,resultsUri,checks
जोड़ें:
{
"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",
...
},
...
]
}
आगे क्या करना है?
अपने विश्लेषण के नतीजे पाने का तरीका जानने के लिए, क्वेरी रिपोर्ट देखें.