বিশ্লেষণের জন্য আপনার অ্যাপ আপলোড করুন

চেক এপিআই প্রকাশের আগে অ্যান্ড্রয়েড এবং iOS অ্যাপগুলিকে বিশ্লেষণ করতে পারে যাতে আপনার অ্যাপের ডেটা সংগ্রহ এবং ভাগ করে নেওয়ার আচরণ এবং আপনার অ্যাপ সর্বজনীনভাবে চালু করার আগে আপনার কাছে দৃশ্যমানতা থাকে।

এই কুইকস্টার্ট আপনাকে দেখায় কিভাবে gcloud CLI এবং cURL কমান্ড ব্যবহার করে একটি অ্যাপ আপলোড করতে হয়।

পূর্বশর্ত

আপনি শুরু করার আগে, নিশ্চিত করুন যে আপনি আমাদের অনুমোদন গাইড ব্যবহার করে অনুমোদিত অনুরোধ পাঠাতে সক্ষম।

আপনার অ্যাপ বান্ডিল প্রস্তুত করুন

অ্যান্ড্রয়েড

  1. আপনার অ্যাপের জন্য একটি APK বা AAB ফাইল তৈরি করুন।

    নির্দেশাবলীর জন্য Android ডকুমেন্টেশনে আপনার অ্যাপ তৈরি করুন এবং চালান দেখুন।

iOS

  1. Xcode-এ, লক্ষ্য অ্যাপের জন্য একটি প্রভিশনিং প্রোফাইল নির্বাচন করুন।

  2. প্রদর্শিত ড্রপ-ডাউন মেনু থেকে, পণ্য > সংরক্ষণাগারে ক্লিক করুন। সবচেয়ে সাম্প্রতিক আর্কাইভ নির্বাচন করুন, তারপর ডিস্ট্রিবিউট অ্যাপে ক্লিক করুন।

  3. প্রদর্শিত উইন্ডোতে, বিকাশ > পরবর্তী ক্লিক করুন।

  4. (ঐচ্ছিক) একটি দ্রুত বিল্ড পেতে, বিটকোড থেকে পুনর্নির্মাণ বিকল্পটি নির্বাচন মুক্ত করুন, তারপরে পরবর্তী ক্লিক করুন।

    পরীক্ষা চালানোর জন্য আপনার অ্যাপকে পাতলা করা বা পুনর্নির্মাণের প্রয়োজন নেই যাতে আপনি নিরাপদে এই বিকল্পটি অক্ষম করতে পারেন।

  5. রপ্তানি ক্লিক করুন, তারপর একটি ডিরেক্টরি নির্দিষ্ট করুন যেখানে আপনি আপনার অ্যাপের IPA ফাইল ডাউনলোড করতে চান৷

আপনার অ্যাপ বান্ডেল আপলোড করুন

media.upload পদ্ধতি ব্যবহার করে আপনার অ্যাপ বান্ডিল আপলোড করুন।

আপনার অ্যাপ আপলোড করার দুটি উপায় আছে:

মেটাডেটা সহ বাইনারি

আপনি মেটাডেটা অন্তর্ভুক্ত করতে পারেন যেমন codeReferenceId যা আপনার কোড সংগ্রহস্থলে একটি নির্দিষ্ট প্রতিশ্রুতির সাথে বিশ্লেষণকে লিঙ্ক করে।

শিরোনাম X-Goog-Upload-Protocol: multipart যেখানে প্রথম অংশে 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 :

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"

ডিফল্টরূপে, এটি শুধুমাত্র রিপোর্ট রিসোর্স নাম এবং চেক কনসোলে রিপোর্ট দেখার জন্য একটি URL প্রদান করে।

আরও ডেটা দেখতে, অনুরোধে একটি ফিল্ড মাস্ক অন্তর্ভুক্ত করুন। উদাহরণ স্বরূপ, URL ক্যোয়ারী প্যারামিটার ফিল্ড=name,resultsUri, 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",
      ...
    },
    ...
  ]
}

এরপর কি?

আপনার বিশ্লেষণের ফলাফল কিভাবে আনতে হয় তা জানতে ক্যোয়ারী রিপোর্ট দেখুন।

,

চেক এপিআই প্রকাশের আগে অ্যান্ড্রয়েড এবং iOS অ্যাপগুলিকে বিশ্লেষণ করতে পারে যাতে আপনার অ্যাপের ডেটা সংগ্রহ এবং ভাগ করে নেওয়ার আচরণ এবং আপনার অ্যাপ সর্বজনীনভাবে চালু করার আগে আপনার কাছে দৃশ্যমানতা থাকে।

এই কুইকস্টার্ট আপনাকে দেখায় কিভাবে gcloud CLI এবং cURL কমান্ড ব্যবহার করে একটি অ্যাপ আপলোড করতে হয়।

পূর্বশর্ত

আপনি শুরু করার আগে, নিশ্চিত করুন যে আপনি আমাদের অনুমোদন গাইড ব্যবহার করে অনুমোদিত অনুরোধ পাঠাতে সক্ষম।

আপনার অ্যাপ বান্ডিল প্রস্তুত করুন

অ্যান্ড্রয়েড

  1. আপনার অ্যাপের জন্য একটি APK বা AAB ফাইল তৈরি করুন।

    নির্দেশাবলীর জন্য Android ডকুমেন্টেশনে আপনার অ্যাপ তৈরি করুন এবং চালান দেখুন।

iOS

  1. Xcode-এ, লক্ষ্য অ্যাপের জন্য একটি প্রভিশনিং প্রোফাইল নির্বাচন করুন।

  2. প্রদর্শিত ড্রপ-ডাউন মেনু থেকে, পণ্য > সংরক্ষণাগারে ক্লিক করুন। সবচেয়ে সাম্প্রতিক আর্কাইভ নির্বাচন করুন, তারপর ডিস্ট্রিবিউট অ্যাপে ক্লিক করুন।

  3. প্রদর্শিত উইন্ডোতে, বিকাশ > পরবর্তী ক্লিক করুন।

  4. (ঐচ্ছিক) একটি দ্রুত বিল্ড পেতে, বিটকোড থেকে পুনর্নির্মাণ বিকল্পটি নির্বাচন মুক্ত করুন, তারপরে পরবর্তী ক্লিক করুন।

    পরীক্ষা চালানোর জন্য আপনার অ্যাপকে পাতলা করা বা পুনর্নির্মাণের প্রয়োজন নেই যাতে আপনি নিরাপদে এই বিকল্পটি অক্ষম করতে পারেন।

  5. রপ্তানি ক্লিক করুন, তারপর একটি ডিরেক্টরি নির্দিষ্ট করুন যেখানে আপনি আপনার অ্যাপের IPA ফাইল ডাউনলোড করতে চান৷

আপনার অ্যাপ বান্ডেল আপলোড করুন

media.upload পদ্ধতি ব্যবহার করে আপনার অ্যাপ বান্ডিল আপলোড করুন।

আপনার অ্যাপ আপলোড করার দুটি উপায় আছে:

মেটাডেটা সহ বাইনারি

আপনি মেটাডেটা অন্তর্ভুক্ত করতে পারেন যেমন codeReferenceId যা আপনার কোড সংগ্রহস্থলে একটি নির্দিষ্ট প্রতিশ্রুতির সাথে বিশ্লেষণকে লিঙ্ক করে।

শিরোনাম X-Goog-Upload-Protocol: multipart যেখানে প্রথম অংশে 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 :

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"

ডিফল্টরূপে, এটি শুধুমাত্র রিপোর্ট রিসোর্স নাম এবং চেক কনসোলে রিপোর্ট দেখার জন্য একটি URL প্রদান করে।

আরও ডেটা দেখতে, অনুরোধে একটি ফিল্ড মাস্ক অন্তর্ভুক্ত করুন। উদাহরণ স্বরূপ, URL ক্যোয়ারী প্যারামিটার ফিল্ড=name,resultsUri, 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",
      ...
    },
    ...
  ]
}

এরপর কি?

আপনার বিশ্লেষণের ফলাফল কিভাবে আনতে হয় তা জানতে ক্যোয়ারী রিপোর্ট দেখুন।