بعد أن يصبح كل شيء جاهزًا، يمكنك إرسال الطلبات إلى Google Play Developer Reporting API لاسترداد البيانات الوصفية حول مجموعات المقاييس والاستعلام عن مقاييسها.
تعرض عيّنات التعليمات البرمجية التالية طريقة إرسال بعض الطلبات البسيطة. على سبيل المثال، توضّح لك الطرق أدناه كيفية استرداد مقاييس مختلفة لتطبيقك. هناك بعض معلمات طلب البحث المختلفة التي يمكن استخدامها لتضييق نطاق طلب البحث.
جارٍ استرداد البيانات الوصفية لمجموعة المقاييس
يسترد المثال التالي البيانات الوصفية لمجموعة مقاييس نسبة الأعطال لتطبيق وهمي باسم com.example.app.
طلب بسيط:
يحدّد طلب HTTP GET هذا مَعلمة اسم التطبيق ويعرض مورد المقياس الكامل المرتبط بتطبيقك.
GET https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet
استجابة معلومات المقياس:
يتضمّن الردّ الحقول التالية ذات الصلة بمجموعة المقاييس:
{ "freshness_info": { "freshness": [ "aggregation_period": "DAILY" "latest_end_time": { year: "2021" month: "7" day: "22" time_zone: "America/Los_Angeles" } ] } }
استخدام ميزة طلب البحث
يستخدم طلب HTTP POST التالي لهذا المورد نفسه نقطة النهاية query لاسترداد بيانات معيّنة من مجموعة المقاييس.
POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query
في نص الطلب، مرِّر خيارات طلب البحث لاسترداد المقاييس استنادًا إلى معايير محدّدة.
{ "timeline_spec": { "aggregation_period": "DAILY" "start_time": { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" } "end_time": { year: "2021" month: "7" day: "3" time_zone: "America/Los_Angeles" } } "dimensions": ["apiLevel"] "metrics": ["errorReportCount", "distinctUsers"] "page_size": "10" }
في ما يلي بعض الأمثلة على مستوى المجموعة:
| الحقول | |
|---|---|
timelineSpec |
يشير هذا الحقل إلى مواصفات مَعلمات تجميع المخطط الزمني. يُرجى الاطّلاع على مستندات كل مجموعة مقاييس للحصول على قائمة بفترات التجميع المتاحة. |
dimensions[] |
السمات التي يتم تقسيم المقاييس حسبها يُرجى الاطّلاع على مستندات كل مجموعة مقاييس للحصول على قائمة بالسمات المتاحة. |
metrics[] |
المقاييس المطلوب تجميعها |
pageSize |
الحد الأقصى لحجم البيانات المعروضة إذا لم يتم تحديدها، سيتم عرض 1000 صف كحد أقصى. الحد الأقصى للقيمة هو 10,000، وسيتم فرض القيم التي تزيد عن 10,000 على 10,000. |
التعامل مع الردود
بعد أن يعالج الخادم طلبًا صالحًا يتضمّن حقولاً صالحة، يُرسل رمز الحالة 200 OK HTTP مع البيانات المطلوبة. أما إذا كانت معلمَة طلب البحث fields تحتوي على خطأ أو كانت غير صالحة، يعرض الخادم رمز الحالة 400 Bad Request HTTP مصحوبًا برسالة خطأ تُخبر المستخدم بالخلل في الحقول التي اختارها (مثلاً "Invalid field timeline_spec").
في ما يلي مثال على الاستجابة المذكورة في الفقرة التمهيدية أعلاه.
POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query
يظهر الرد على النحو التالي:
200 OK
{ rows: [ { aggregation_period: "DAILY" start_time: { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" } dimensions: [{dimension: "apiLevel" int64_value: "20"}] metrics: [ {metric: "errorReportCount" decimal_value: "100"}, {metric: "distinctUsers" decimal_value: "57"}, ] }, { aggregation_period: "DAILY" start_time: { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" } dimensions: [{dimension: "apiLevel" int64_value: "21"}] metrics: [ {metric: "errorReportCount" decimal_value: "123"}, {metric: "distinctUsers" decimal_value: "65"}, ] }, ... ] next_page_token: "eW91IGhhdmUgdG9vIG11Y2ggZnJlZSB0aW1l" }
ملاحظة: بالنسبة إلى واجهات برمجة التطبيقات التي تتيح استخدام معلمات طلب البحث لتقسيم البيانات على عدّة صفحات (مثل maxResults أو nextPageToken)، استخدِم هذه المَعلمات للحد من عدد نتائج كل طلب بحث حتى تسهل إدارتها.