باستخدام حزمة تطوير البرامج (SDK) الخاصة بـ "ألعاب Play على الكمبيوتر"، يمكنك الوصول إلى خدمات Google Play لإنشاء لعبتك وتحقيق الربح منها على أجهزة الكمبيوتر. يمكنك بيع المحتوى الرقمي باستخدام خدمة "الفوترة في Google Play"، وتسجيل الدخول بسلاسة باستخدام "ألعاب Play"، والتحقّق من أنّ لدى المستخدمين ترخيصًا صالحًا لاستخدام تطبيقك من خلال Play Integrity.
للحصول على نظرة عامة على الميزات القادمة والإصدارات الثابتة وبنية التكامل ، يُرجى الاطّلاع على خارطة طريق "ألعاب Play على الكمبيوتر".
هل أنت مستعد للبدء؟
المتطلبات الأساسية
إنشاء إدخال للتطبيق داخل Play Console وطلب اسم حزمة Play
تنزيل تطبيق ألعاب Google Play على الكمبيوتر وتثبيته وتسجيل الدخول باستخدام حسابك على Google.
الخطوة 1: إضافة حزمة تطوير البرامج (SDK) إلى مشروعك
C++
تنزيل حزمة تطوير البرامج (SDK) الخاصة بـ "ألعاب Play على الكمبيوتر"C++.
نسخ مجلد عناوين واجهة برمجة التطبيقات
includes/إلى قاعدة التعليمات البرمجية لتطبيقكنسخ الملفات القابلة لإعادة التوزيع من الدليل
imports/إلى مشروع تطبيقك، استنادًا إلى البنية المستهدَفة:للبنية 64 بت (x64): نسخ الملفات من
imports/x64/للبنية 32 بت (x86): نسخ الملفات من
imports/x86/ربط مشروعك بـ
play_pc_sdk.libما يتيح الوصول إلى محتوياتplay_pc_sdk.dll
#C
تنزيل حزمة تطوير البرامج (SDK) الخاصة بـ ألعاب Play على الكمبيوتر Unity كملف tarball (.tgz)
يتم توزيع حزمة تطوير البرامج (SDK) كملف tarball (.tgz) متوافق مع مدير حزم Unity (UPM). لاستيراد الحزمة، يُرجى الاطّلاع على مقالة تثبيت حزمة UPM من ملف tar محلي
للحصول على مستندات مفصّلة وتعليمات الإعداد وإرشادات إضافية، يُرجى الرجوع إلى صفحة حزمة Unity الخاصة بـ "ألعاب Play على الكمبيوتر".
الخطوة 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 .
بعد إكمال عملية توقيع لعبتك رقميًا، أرسِل معلومات الشهادة إلى ممثل Google لإعدادها.
الخطوة 4: تهيئة حزمة تطوير البرامج (SDK)
يجب تهيئة حزمة تطوير البرامج (SDK) أثناء تسلسل بدء تشغيل لعبتك. يجب أن يتم ذلك تلقائيًا بدون أي تفاعل من المستخدم، ويُنصح بالتحقّق من نجاح عملية التهيئة قبل عرض نافذة لعبتك. يوفّر ذلك أفضل تجربة للمستخدم من خلال عرض الأخطاء وحلّها في أقرب وقت ممكن، ويتجنّب ظهور نافذة لعبتك لفترة وجيزة في الحالات التي تحتاج فيها عملية لعبتك إلى الخروج.
ابدأ باستخدام حزمة تطوير البرامج (SDK) عن طريق استدعاء
GooglePlayInitialize (C++) أو
GooglePlayInitialization.InitializeAsync (C#)
لتهيئة واجهة برمجة التطبيقات. سيؤدي ذلك إلى إعداد الحالة العامة والاتصال بوقت تشغيل حزمة تطوير البرامج (SDK) والتحقّق من بدء تشغيل التطبيق بشكل صحيح. يجب استدعاء هذه الطريقة وإكمال معاودة الاتصال بالمتابعة باستخدام InitializeResult::ok() (C++) أو Result.IsOk (C#) التي تساوي true قبل استخدام أي واجهة برمجة تطبيقات أخرى.
C++
// 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.
// ...
}
#C
// SDK Clients
private BillingClient _billingClient;
private IntegrityClient _integrityClient;
// Stored product information
private string _offerToken;
private async void InitializeSDK()
{
// The factory provides the necessary handler for initialization.
var initializationHandler = PlayPcSdkFactory.InitializationHandler;
var result = await GooglePlayInitialization.InitializeAsync(initializationHandler);
if (result.IsOk)
{
// Use the factory to get Unity-compatible instances of the clients
_billingClient = PlayPcSdkFactory.CreateBillingClient();
_integrityClient = PlayPcSdkFactory.CreateIntegrityClient();
// SDK is ready for use
}
else
{
// Handle specific, actionable errors
if (result.Code == InitializationError.ActionRequiredShutdownClientProcess)
{
Log("This game must be launched through the Google Play Games client. Please exit all game processes immediately, GPG will relaunch the game safely.");
Application.Quit();
}
}
}
إذا تعذّرت عملية التهيئة باستخدام الرمز kActionRequiredShutdownClientProcess (C++) أو InitializationError.ActionRequiredShutdownClientProcess (C#)، يجب الخروج من عملية اللعبة في أقرب وقت ممكن. سيحاول وقت تشغيل حزمة تطوير البرامج (SDK) مساعدة المستخدم بدون أي إجراء إضافي مطلوب من لعبتك. على سبيل المثال، إذا لم يكن لدى المستخدم ترخيص صالح للعبة، سيطلب تطبيق "ألعاب Google Play" من المستخدم شراء نسخة. بالنسبة إلى الأخطاء الأخرى، عليك أيضًا الخروج من عملية اللعبة لأنّه لن يكون بإمكانك استخدام حزمة تطوير البرامج (SDK) لإجراء عمليات مهمة، مثل التحقّق من أنّ لدى المستخدم ترخيصًا صالحًا للعبتك.
قد تشير الاستجابة غير الناجحة إلى إحدى الحالات التالية:
لم يتم تثبيت وقت تشغيل حزمة تطوير البرامج (SDK) أو أنّه لا يعمل على الجهاز أو أنّه إصدار أقدم غير متوافق مع حزمة تطوير البرامج (SDK) المدمجة في لعبتك.
تعذّر على وقت تشغيل حزمة تطوير البرامج (SDK) التحقّق من هوية تطبيق اللعبة. قد يرجع ذلك إلى
manifest.xmlغير صالح أو استخدام حزمة تطوير البرامج (SDK) بدون تفعيل وضع المطوّر أثناء التطوير. بدون ذلك، يجب توقيع ملف اللعبة القابل للتنفيذ رقميًا باستخدام الشهادة الرقمية المسجّلة باسم حزمة Play.لم يتم تشغيل ملف اللعبة القابل للتنفيذ من خلال برنامج ألعاب Google Play.
ليس لدى المستخدم النشط في "ألعاب Google Play" ترخيص للتطبيق.
الخطوة 5: (اختيارية) دعم عمليات ألعاب متعدّدة
يجب إكمال خطوات التكامل الإضافية هذه إذا كانت لعبتك تستخدم عمليات متعدّدة، وكانت حزمة تطوير البرامج (SDK) الخاصة بـ "ألعاب Play على الكمبيوتر" مستخدَمة من خلال عملية مختلفة عن العملية التي يتم تشغيلها من خلال "ألعاب Google Play على الكمبيوتر". على سبيل المثال، إذا كان "ألعاب Google Play على الكمبيوتر" يشغّل مشغّل لعبتك، ثم يبدأ المشغّل عملية اللعبة التي ستتفاعل مع حزمة تطوير البرامج (SDK).
-
يوفّر ذلك أفضل تجربة للمستخدم من خلال عرض الأخطاء في أقرب وقت ممكن. يُرجى العِلم أنّ العملية الفرعية التي تستخدم حزمة تطوير البرامج (SDK) يجب أن تُجري أيضًا عملية التهيئة بالإضافة إلى العملية التي يتم تشغيلها مباشرةً.
لاستخدام حزمة تطوير البرامج (SDK) الخاصة بـ "ألعاب Play على الكمبيوتر" في عملية فرعية، يجب إعادة توجيه مَعلمات سطر الأوامر إلى العملية الفرعية التي تم إنشاؤها.
مثال على إعادة توجيه مَعلمات سطر الأوامر:
Processes hierarchy tree: GooglePlayGames.exe └───YourGameLauncher.exe --gpg_args=abc --your_args=123 └───YourGame.exe --gpg_args=abc --your_args=123في هذا المثال، نرى تسلسلاً هرميًا للعمليات حيث يشغّل "ألعاب Google Play على الكمبيوتر" (
GooglePlayGames.exe) اللعبة (YourGameLauncher.exe) باستخدام بعض المَعلمات النموذجية (--gpg_args=abc --your_args=123). ثم تنشئ اللعبة عملية فرعية (YourGame.exe) تستخدم حزمة تطوير البرامج (SDK) الخاصة بـ "ألعاب Play على الكمبيوتر". للسماح بذلك، تعيد عملية اللعبة التي يتم تشغيلها من خلال "ألعاب Google Play على الكمبيوتر" توجيه مَعلمات سطر الأوامر التي تم منحها لها إلى العملية الفرعية.يجب الخروج من جميع العمليات عند توقّف اللعبة عن التشغيل.
عندما يغلق المستخدم لعبتك أو تخرج اللعبة بسبب تعذُّر تهيئة حزمة تطوير البرامج (SDK)، مثل
kActionRequiredShutdownClientProcess، يجب إغلاق جميع العمليات التي أنشأتها لعبتك. يضمن ذلك أنّه في المرة التالية التي يشغّل فيها برنامج "ألعاب Google Play على الكمبيوتر" لعبتك، ستسري التغييرات الجديدة، مثل التبديل إلى حساب نشط مختلف.
الخطوات التالية
استخدام حزمة تطوير البرامج (SDK) أثناء التطوير في بيئة التطوير المتكاملة (IDE):
- تفعيل وضع المطوّر
إضافة ميزات "ألعاب Google Play على الكمبيوتر" إلى تطبيقك:
- بيع السلع الرقمية باستخدام خدمة "الفوترة في Google Play"
- قياس جهودك التسويقية باستخدام أداة "مُحيل التثبيت في Play"
- حماية لعبتك باستخدام Play Integrity على الكمبيوتر