ملفات APK والمسارات

تتيح لك واجهة برمجة تطبيقات Google Play Developer API تحميل حِزم APK جديدة لتطبيقاتك وإرسالها إلى قنوات إصدار مختلفة. ويتيح لك ذلك نشر الإصدارات الأولية والتجريبية من تطبيقك، والتي تكون متاحة للمستخدمين الموافَق عليهم. ويتيح لك ذلك أيضًا نشر إصدار الطرح على مراحل ويتم توفيره تلقائيًا لعدد قليل من مستخدمي التطبيق. بعد طرح إصدار الطرح على مراحل، يمكنك زيادة عدد المستخدمين الذين يحصلون على هذا الإصدار من التطبيق تدريجيًا، حتى تنشر هذا الإصدار في النهاية على أنه إصدار "الإنتاج".

إضافة وتعديل حِزم APK

  1. يمكنك تحميل حزمة APK واحدة أو أكثر من خلال استدعاء الطريقة Edits.APs: upload.

    وتحمّل هذه الطريقة حزمة APK في "حزمة" تخزين، حيث يمكن تعيينها إلى "مسار" لنشرها للمستخدمين. (إذا تم حذف التعديل أو تجاهله، سيتم أيضًا فقدان أي ملفات APK تم تحميلها إلى هذا التعديل.)

  2. إصدار حِزم APK على "المسارات" من خلال طلب Edits.tracks: update. يمكنك إصدار حِزم APK على المسارات التالية:

    • مسارات الاختبار مثل "alpha" و"beta"

      يتم نشر الإصدارات الأولية والتجريبية من التطبيق للمستخدمين الذين تقوم بتعيينهم إلى مجموعات الاختبار الأولي والتجريبي. ويمكنك تعيين المستخدمين لهذه المجموعات باستخدام Google Play Console.

    • مسار الاختبار الداخلي: "qa"

      ويتم نشر الإصدارات الداخلية من تطبيقك في مسار الاختبار الداخلي كما تم إعدادها في Google Play Console.

    • قناة الإصدار العلني: "production"

      يتم نشر الإصدارات في مرحلة "الإنتاج" لجميع المستخدمين. يمكنك الاستفادة من الإصدارات المرحلية على مسار "الإنتاج" لنشر إصدارك أولاً بأمان إلى نسبة صغيرة من مستخدمي الإنتاج ثم زيادة هذه النسبة تدريجيًا مع زيادة ثقتك في الإصدار.

    يجب ألا يضيف مستخدمو الوضع البسيط أكثر من حزمة APK واحدة إلى أي مسار. يمكن لمستخدمي الوضع المتقدم الذين يستخدمون دعم حِزم APK المتعددة تحميل صفر أو ملف APK واحد أو أكثر إلى كل مسار.

اسم المسار لمسار شكل الجهاز

يكون اسم المسار لمسار شكل الجهاز مسبوقًا بمعرّف معيّن.

شكل الجهاز بادئة
نظام التشغيل Android Automotive سيارات
Wear OS رداء
Android TV تلفزيون

كيف يتم حساب اسم مسار لمسار شكل جهاز معيَّن؟

أنواع المسارات الشائعة مثل مسار الإنتاج والاختبار المفتوح ومسارات الاختبار الداخلي لها اسم مسار معروف.

نوع التتبع اسم المقطع الصوتي التلقائي
الإنتاج إصدار
الاختبار المفتوح إصدار تجريبي
الاختبار الداخلي qa

يمكن احتساب اسم قناة الإصدار لمسار شكل جهاز معيّن على النحو التالي: "[prefix]:defaultTrackName". على سبيل المثال، سيتضمّن شكل الجهاز الذي يعمل بنظام التشغيل Wear OS مسارات بالاسم: "wear:production" و"wear:beta" و"wear:qa".

يتم إنشاء مسارات الاختبار المغلقة يدويًا وتكون لها أسماء مخصّصة. بالتالي، سيكون اسم مسار الاختبار المغلق لنموذج الأجهزة باسم $name اسم المسار "[prefix]:$name".

مثال على سير عمل حزمة APK

يصف هذا القسم طريقة نموذجية لاستخدام واجهة برمجة تطبيقات المسارات. في هذه الحالة، نفترض أنك تريد تحميل إصدارات جديدة من APK لكل مسار، وتعيين عدد من المستخدمين لتلقي إصدار طرح على مراحل. (من الناحية العملية، من غير المحتمل أن يتخذ المطوّر كل هذه الإجراءات في العملية نفسها، وبدلاً من ذلك، يمكنك تحديث الإصدار التجريبي في يوم من الأيام وإنشاء إصدار مرحلي عند "الإنتاج" في يوم آخر، وهكذا).

  1. افتح عملية تعديل جديدة، كما هو موضّح في خطوات عمل التعديلات
  2. استدعِ طريقة Edits.APs: تحميل لكل حزمة APK تريد تحميلها. تمرير APK في نص طلب الطريقة (يؤدي هذا الإجراء إلى وضع حزمة APK في مساحة تخزين، إلا أنّه لا يتم نشرها على مسار أو نشرها). تعرض الطريقة رمز الإصدار لكل ملف APK تحمّله، وأنك ستستخدم رمز الإصدار هذا للإشارة إلى حزمة APK عند إصدارها على مسار ما.
  3. عليك استدعاء طريقة Edits.tracks: update لكل مقطع صوتي تريد إصدار ملفات APK به. في نص الطلب، أدخِل مورد Edits.tracks يحتوي على الإصدار الذي تريد طرحه. على سبيل المثال، لإصدار ملف APK برمز الإصدار 88:

    {
    "releases": [{
      "versionCodes": ["88"],
      "status": "completed"
    }]
    }
    

    في هذه المرحلة، لا تزال حزم APK غير متاحة للمستخدمين. كما هو الحال مع التعديلات الأخرى، لا تسري التغييرات حتى تلتزم بها.

  4. استدعِ طريقة التعديلات: التنفيذ لتنفيذ التغييرات. بعد إجراء ذلك، سيتم منح المستخدمين في كل مسار الإصدار المحدّث من APK. (كما هو الحال مع جميع التعديلات، قد يستغرق تطبيق التغييرات عدة ساعات).

الطرح على مراحل

عندما يكون لديك إصدار جديد من حزمة APK تريد نشره تدريجيًا، يمكنك اختيار إصداره كإصدار "طرح على مراحل". إذا قمت بذلك، سينشرها Google Play تلقائيًا إلى الجزء المطلوب من مستخدمي التطبيق الذين تحددهم. إذا لم تكن هناك أي مشكلات في حزمة APK "للطرح" (مثل الأعطال، وما إلى ذلك)، فيمكنك زيادة عدد المستخدمين الذين يحصلون على ذلك الإصدار، وعندما تكون مستعدًا، يمكنك نشر حزمة APK هذه باعتبارها إصدار الإنتاج الجديد.

يصف هذا القسم الخطوات التي ستجريها لإجراء طرح على مراحل لحزمة APK، ثم الترويج لها إلى مرحلة الإنتاج:

  1. أنشئ تعديلاً، كما هو موضَّح في سير عمل التعديلات.

  2. حمِّل حزمة APK جديدة للتعديل باستخدام طريقة Edits.APs: تحميل.

  3. يمكنك بدء إصدار مرحلي "inProgress" على قناة الإنتاج باستخدام طريقة Edits.tracks: update. اختَر النسبة المئوية للمستخدمين الذين يجب أن يتلقّوا حزمة APK الجديدة. في هذه المرحلة، لا تزال حزمة APK غير متوفّرة لأي مستخدم نهائي.

    {
    "releases": [{
      "versionCodes": ["99"],
      "userFraction": 0.05,
      "status": "inProgress"
    }]
    }
    

  4. يمكنك تنفيذ التغييرات في التعديل النشط من خلال استدعاء التعديلات: التنفيذ. خلال الساعات القليلة القادمة، سيتم طرح حزمة APK الجديدة للمستخدمين. سيتلقّى عدد المستخدمين الذين تختارهم حزمة APK الجديدة

بناءً على نجاح الطرح على مراحل، قد ترغب بعد ذلك في زيادة نسبة المستخدمين المؤهلين للحصول على هذا الإصدار أو تعليق الإصدار.

زيادة عدد المستخدمين للطرح على مراحل

بافتراض أن لديك طرحًا مستمرًا على مراحل بنسبة 5٪، كما هو موضح في القسم السابق، يصف هذا القسم كيفية زيادة النسبة المئوية في حالة نجاح الإصدار:

  1. أنشئ تعديلاً، كما هو موضَّح في سير عمل التعديلات.

  2. يمكنك تغيير إصدار "inProgress" المرحلي على قناة الإنتاج باستخدام طريقة Edits.tracks: update. زيادة عدد المستخدمين الذين من المفترض أن يتلقّوا حزمة APK الجديدة:

    {
    "releases": [{
      "versionCodes": ["99"],
      "userFraction": 0.1,
      "status": "inProgress"
    }]
    }
    

  3. يمكنك تنفيذ التغييرات في التعديل النشط من خلال استدعاء التعديلات: التنفيذ. خلال الساعات القليلة القادمة، سيتم طرح حزمة APK الجديدة للمستخدمين. سيتلقّى عدد المستخدمين الذين تختارهم حزمة APK الجديدة

تعليق الطرح على مراحل

بافتراض أن لديك طرحًا مستمرًا على مراحل بنسبة 5٪، كما هو موضح في القسم السابق، يصف هذا القسم كيفية تعليق الطرح على مراحل في حال اكتشاف مشكلة:

  1. أنشئ تعديلاً، كما هو موضَّح في سير عمل التعديلات.

  2. يمكنك تغيير إصدار "inProgress" المرحلي على قناة الإنتاج باستخدام طريقة Edits.tracks: update. اضبط الحالة على "halted"

    {
    "releases": [{
      "versionCodes": ["99"],
      "status": "halted"
    }]
    }
    

  3. يمكنك تنفيذ التغييرات في التعديل النشط من خلال استدعاء التعديلات: التنفيذ. لن يكون إصدارك متاحًا للمستخدمين الجُدد بعد الآن.

إذا قررت لاحقًا استئناف إصدار متوقف، يمكنك إجراء ذلك من خلال إعادة ضبط حالته على "inProgress".

إكمال الطرح على مراحل

بعد أن تكون راضيًا عن عملية الطرح على مراحل، وترغب في طرح الإصدار لجميع المستخدمين، يمكنك ضبط حالة الإصدار على "completed":

  1. أنشئ تعديلاً، كما هو موضَّح في سير عمل التعديلات.

  2. يمكنك تغيير إصدار "inProgress" المرحلي على قناة الإنتاج باستخدام طريقة Edits.tracks: update. اضبط الحالة على "halted"

    {
    "releases": [{
      "versionCodes": ["99"],
      "status": "completed"
    }]
    }
    

  3. يمكنك تنفيذ التغييرات في التعديل النشط من خلال استدعاء التعديلات: التنفيذ. خلال الساعات القليلة القادمة، سيتم طرح حزمة APK الجديدة للمستخدمين. سيتلقّى عدد المستخدمين الذين تختارهم حزمة APK الجديدة

الإصدارات التمهيدية

وتتيح لك الإصدارات التمهيدية تحميل ملفات APK تلقائيًا وإنشاء إصدار عبر واجهة برمجة التطبيقات التي يمكن نشرها لاحقًا عبر Google Play Console. لإنشاء إصدار مسودة على مسار:

  1. افتح عملية تعديل جديدة، كما هو موضّح في خطوات عمل التعديلات
  2. استدعِ طريقة Edits.APs: تحميل لكل حزمة APK تريد تحميلها. تمرير حزمة APK في نص طلب الطريقة تعرض الطريقة رمز إصدار لكل ملف APK تحمّله، وسوف تستخدم رمز الإصدار هذا للإشارة إلى حزمة APK عند تعيينها إلى إصدار.
  3. استدعِ طريقة Edits.tracks: update لكل مقطع صوتي تريد إصدار الأغنية عليه. في نص الطلب، مرِّر مورد Edits.tracks يحتوي على مسودة الإصدار الذي تريد إنشاءه. مثلاً:

    {
    "releases": [{
      "name": "My draft release",
      "versionCodes": ["88"],
      "status": "draft"
    }]
    }
    

  4. استدعِ طريقة التعديلات: التنفيذ لتنفيذ التغييرات. يمكن الآن فحص إصدار المسودة وطرحه من خلال Google Play Console أو واجهة برمجة التطبيقات.

تحديد ملاحظات الإصدار

عند طرح إصدار جديد من تطبيقك، يمكنك تسليط الضوء على الميزات الجديدة للمستخدمين من خلال تحديد ملاحظات الإصدار على تطبيقك.

لإجراء ذلك، استخدِم الحقل "releaseNotes" عند توفير مورد Edits.tracks في طريقة Edits.tracks: update.

{
  "releases": [{
      "name": "Release with notes",
      "versionCodes": ["88"],
      "status": "completed",
      "releaseNotes": [
        {"language": "en-US", "text": "Describe what's new in this release."}
      ]
  }]
}