تحسين أداء لعبتك باستخدام حزمة تطوير البرامج (SDK) لألعاب Play على الكمبيوتر

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

هل أنت مستعد للبدء؟

المتطلّبات الأساسية

  • أنشئ إدخالاً للتطبيق داخل Play Console واطلب الحصول على اسم حزمة على Play.

  • نزِّل ألعاب Google Play على الكمبيوتر وثبِّتها، ثم سجِّل الدخول باستخدام حسابك على Google.

الخطوة 1: إضافة حزمة تطوير البرامج إلى مشروعك

الخطوة 2: إضافة ملف بيان

قبل أن تتمكّن من استخدام حزمة SDK من داخل لعبتك، عليك ربط ملف تنفيذ اللعبة باسم حزمة Play الذي طلبت الحصول عليه في Play Console. يتم ذلك من خلال إضافة ملف manifest.xml في الدليل نفسه الذي يوجد فيه الملف التنفيذي للعبتك.

محتوى المثال manifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<Manifest version="1">
    <Application>
        <PackageName>com.example.package</PackageName>
    </Application>
</Manifest>

موضع المثال manifest.xml:

C:\Program Files
└───Example Game
    ├───Game.exe
    └───manifest.xml

الخطوة 3: التوقيع رقميًا على لعبتك

قبل أن تتمكّن لعبتك من استخدام حزمة تطوير البرامج (SDK)، يجب توقيع الملف التنفيذي للعبة رقميًا باستخدام توقيع رقمي من Authenticode. للحصول على تعليمات حول كيفية توقيع ملف تنفيذي، يُرجى الاطّلاع على المستندات حول SignTool .

الخطوة 4: إعداد حزمة تطوير البرامج (SDK)

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

ابدأ استخدام حزمة SDK من خلال استدعاء GooglePlayInitialize لإعداد واجهة برمجة التطبيقات. سيؤدي ذلك إلى إعداد الحالة العامة والربط بوقت تشغيل حزمة SDK والتأكّد من بدء تشغيل التطبيق بشكل صحيح. يجب استدعاء هذا الإجراء وإكمال معاودة الاتصال الخاصة باستئناف العملية مع InitializeResult::ok() يساوي true قبل استخدام أي واجهة برمجة تطبيقات أخرى.

// Initialize the SDK as part of the startup sequence of your application.
auto promise = std::make_shared<std::promise<InitializeResult>>();
GooglePlayInitialize(
  [promise](InitializeResult result) {
    promise->set_value(std::move(result));
  });

auto initialize_result = promise->get_future().get();
if (initialize_result.ok()) {
  // The SDK succeeded with initialization. Continue with the startup sequence
  // of the game.
  // ...
} else if (initialize_result.code() == InitializationError::kActionRequiredShutdownClientProcess) {
  // The SDK failed to initialize and has requested that your game process exit
  // as soon as possible.
  exit(1);
} else {
  // The SDK failed to initialize for an alternative reason. It is still
  // generally recommended that you exit the game process as soon as possible,
  // because it won't be possible to access any APIs in the SDK. Critical
  // operations such as verifying the user owns a valid license to your game
  // won't be possible.
  // ...
}

إذا تعذّر بدء التشغيل وظهر الرمز kActionRequiredShutdownClientProcess، عليك إنهاء عملية اللعبة في أقرب وقت ممكن. سيحاول وقت تشغيل حزمة SDK مساعدة المستخدم بدون أن تتطلّب لعبتك أي إجراء إضافي. على سبيل المثال، إذا لم يكن لدى المستخدم ترخيص صالح للعبة، سيطلب منه برنامج "ألعاب Google Play" شراء نسخة. بالنسبة إلى الأخطاء الأخرى، لا يزال من المستحسن إنهاء عملية اللعبة في أقرب وقت ممكن لأنّه لن يكون بإمكانك استخدام حزمة SDK لتنفيذ عمليات مهمة، مثل التحقّق من أنّ المستخدم يملك ترخيصًا صالحًا للعبتك.

قد تشير الاستجابة غير الناجحة إلى إحدى الحالات التالية:

  • لم يتم تثبيت وقت تشغيل حزمة SDK أو أنّه لا يعمل على الجهاز أو أنّه إصدار قديم غير متوافق مع حزمة SDK المدمجة في لعبتك.

  • تعذّر على وقت تشغيل حزمة SDK إثبات صحة هوية تطبيق اللعبة. قد يرجع ذلك إلى عدم صلاحية manifest.xml أو استخدام حزمة SDK بدون تفعيل وضع المطوّرين أثناء التطوير. وبدون ذلك، يجب أن يتم التوقيع رقميًا على الملف التنفيذي للعبتك باستخدام الشهادة الرقمية المسجّلة باسم حزمة Play.

  • لم يتم تشغيل ملف تنفيذ اللعبة من خلال برنامج "ألعاب Google Play".

  • لا يملك المستخدم النشط في "ألعاب Google Play" ترخيصًا للتطبيق.

الخطوة 5: (اختيارية) إتاحة عمليات متعددة للألعاب

إذا كانت لعبتك تستخدم عمليات متعددة وتخطّط لاستخدام حزمة تطوير البرامج (SDK) الخاصة ببرنامج "ألعاب Play على الكمبيوتر" من عملية لم يتم تشغيلها مباشرةً من خلال برنامج "ألعاب Play على الكمبيوتر"، يجب اتّخاذ خطوات تكامل إضافية:

  1. يجب أن تتحقّق العملية التي يتم تشغيلها مباشرةً من خلال برنامج "ألعاب Google Play على الكمبيوتر" من إعداد حزمة تطوير البرامج (SDK) الخاصة ببرنامج "ألعاب Play على الكمبيوتر" بنجاح.

    يوفّر ذلك أفضل تجربة للمستخدم من خلال عرض الأخطاء في أقرب وقت ممكن. يُرجى العِلم أنّ العملية الفرعية التي تستخدم حزمة SDK يجب أن تنفّذ عملية الإعداد أيضًا، بالإضافة إلى العملية التي يتم تشغيلها مباشرةً.

  2. لاستخدام حزمة تطوير البرامج (SDK) الخاصة بتطبيق "ألعاب Play على الكمبيوتر" في عملية فرعية، عليك إعادة توجيه مَعلمات سطر الأوامر إلى العملية الفرعية التي تم إنشاؤها.

    مثال على إعادة توجيه مَعلمات سطر الأوامر:

    Processes hierarchy tree:
    
    GooglePlayGames.exe
    └───YourGameLauncher.exe --foo=abc --bar=123
        └───YourGame.exe --foo=abc --bar=123
    

    في هذا المثال، نرى تسلسلاً هرميًا للعمليات حيث يطلق برنامج "ألعاب Google Play على الكمبيوتر" (GooglePlayGames.exe) اللعبة (YourGameLauncher.exe) مع بعض المَعلمات النموذجية (--foo=abc --bar=123). ثم تنشئ اللعبة عملية فرعية (YourGame.exe) تستخدم حزمة تطوير البرامج (SDK) الخاصة ببرنامج "ألعاب Play على الكمبيوتر". للسماح بذلك، يعيد توجيه عملية اللعبة التي تم تشغيلها من خلال برنامج "ألعاب Google Play على الكمبيوتر" إلى مَعلمات سطر الأوامر التي تم منحها للعملية الفرعية.

  3. يجب إنهاء جميع العمليات عند توقّف اللعبة عن العمل.

    عندما يغلق المستخدم لعبتك أو يتم إنهاء اللعبة بسبب تعذُّر تهيئة حزمة SDK، مثل kActionRequiredShutdownClientProcess، يجب إغلاق جميع العمليات التي أنشأتها لعبتك. يضمن ذلك أنّه في المرة التالية التي يتم فيها تشغيل لعبتك من خلال برنامج &quot;ألعاب Google Play على الكمبيوتر&quot;، سيتم تطبيق التغييرات الجديدة، مثل التبديل إلى حساب نشط مختلف.

الخطوات التالية

استخدِم حزمة تطوير البرامج (SDK) أثناء التطوير في بيئة التطوير المتكاملة (IDE):

أضِف ميزات Google Play للكمبيوتر إلى تطبيقك باتّباع الخطوات التالية: