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

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

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

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

    وتؤدي هذه الطريقة إلى تحميل حزمة 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.SDKs: upload لكل ملف 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.SDKs: upload.

  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. اضبط الحالة على "completed"

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

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

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

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

  1. افتح تعديلاً جديدًا، كما هو موضح في سير عمل التعديلات
  2. عليك استدعاء طريقة Edits.SDKs: upload لكل ملف 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."}
      ]
  }]
}