الأسئلة الشائعة

يجيب هذا المستند عن الأسئلة الشائعة حول حِزم تطوير البرامج (SDK) والنشر في "ألعاب Google Play على الكمبيوتر".

تحقيق الربح

  1. هل يمكن استخدام مسار الشراء بدون خادم الخلفية؟

    من منظور الأمان، تنصح Google باستخدام خادم خلفي.

    لمزيد من المعلومات، يُرجى الاطّلاع على المعالجة بدون خادم خلفية.

  2. هل يُسمح باستخدام أنظمة الدفع الحالية المستندة إلى واجهة برمجة التطبيقات بعد تكامل حزمة تطوير البرامج (SDK) لـ "ألعاب Google Play على الكمبيوتر"؟

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

  3. كيف يمكننا استخدام عمليات الشراء في "وضع مطوّر البرامج"؟

    يجب استهلاك عملية الشراء في "وضع مطوّر البرامج" في غضون 3 دقائق، وإلا سيتم ردّ الأموال المدفوعة.

  4. هل يمكن إجراء دفعات متكرّرة أو اشتراكات؟

    ليس في المستقبل القريب، ولكن يمكنك تقديم حالات استخدام محدّدة لنضيفها إلى خطة تطوير المنتج المستقبلية.

  5. ما هو خطأ الفوترة في مكالمات الشراء؟

    BillingError هي استجابة لنتيجة الدفع. ستعرض الدالة LaunchPurchaseFlow النتيجة على الفور بدون حظر، ولكن عليك الانتظار لمعرفة وقت انتهاء العملية والحصول على النتيجة.

  6. كيف يمكنني استخدام ميزة التحقّق من عمليات الشراء من جهة العميل؟

    ننصحك باستخدام عملية الشراء من جهة الخادم وعملية إثبات الملكية. تتطلّب معالجة عمليات الشراء من تطبيق العميل أن تكون لعبتك مدرَجة في قائمة السماح. يُرجى التواصل مع شريك Google إذا كانت لعبتك تتطلّب الوصول إلى هذه المعلومات. لمزيد من المعلومات، يُرجى الاطّلاع على المعالجة بدون خادم خلفية.

  7. ما هي الحدود القصوى لطلبات البيانات من واجهة برمجة التطبيقات للاستعلام عن تفاصيل المنتجات؟

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

  8. ما هي المَعلمات المطلوبة عند استدعاء Query Purchases أو Launch Purchase Flow في "مكتبة الفوترة"؟

    تقبل الدالة QueryPurchasesContinuation، وهي عبارة عن دالة معاودة الاتصال مع التوقيع std::function<void(QueryPurchasesResult)>. وتمرِّر دالة معاودة الاتصال النتيجة إليك مع كل ProductPurchaseDetails. تتوفّر هذه المعلومات في ملفات عناوين حزمة SDK في الملف includes/billing/models.h.

    يحتوي launch_purchase_flow_result الناتج على الدالتَين ok() وcode(). تعرض الدالة ok() ما إذا كان المسار ناجحًا. تعرض الدالة code() التعداد BillingError (includes/billing/enums.h)، الذي يتضمّن 10 حالات محتملة لحدوث خطأ، مثل إلغاء المستخدم أو حدوث خطأ في الشبكة.

  9. هل يمكن استخدام ترتيب مخصّص في Launch Purchase Flow في Billing Client؟

    في تصميم حزمة SDK الحالي، لا يمكن إدخال حمولة خاصة بك، ولكن يمكنك تقديم أي مجموعة من obfuscated_account_id وobfuscated_profile_id، أي يمكنك عدم تقديم أي منهما أو تقديم أحدهما أو كليهما.

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

    لضمان ربط البيانات الوصفية في حال حدوث انقطاعات في مسار الشراء، خزِّن البيانات الوصفية على خادم الخلفية قبل إطلاق مربّع حوار الشراء واربطها برقم تعريف حساب المستخدم ورمز التخزين التعريفي الذي يتم شراؤه والطابع الزمني الحالي. لمزيد من المعلومات، اطّلِع على مقالة ربط عملية شراء بالبيانات الداخلية.

  10. هل من المفترض حدوث خطأ انتهاء المهلة إذا أغلق المستخدم المتصفّح بدون الدفع أثناء مسار الشراء؟

    نعم، هذه مشكلة معروفة وسلوك مقصود في مسار العمل المستند إلى المتصفّح. نحن نعمل حاليًا على توفير ميزة شراء سلسة (تستند إلى WebView) تتيح إكمال عملية الدفع داخل اللعبة وتزيل مشكلة انتهاء المهلة.

  11. ما هي المتطلبات الأساسية للتبديل من نظام الفوترة في Google باستخدام OAuth إلى نظام الفوترة الأصلي في Google باستخدام DLL؟

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

  12. هل تتم معالجة طلب البيانات من واجهة برمجة التطبيقات Launch Purchase Flow من خلال متصفّح ويب؟

    نعم، تتم معالجة الطلب حاليًا من خلال متصفّح، وتخطّط Google لإكمال العملية بالكامل بدون مغادرة اللعبة، ويمكن تحقيق ذلك من خلال حزمة SDK.

  13. هل على المستخدم تسجيل الدخول بشكل منفصل لكل لعبة لإجراء عملية شراء؟

    يتم استخدام حساب المقدّمة في "ألعاب Google Play" لكل جلسة لعب، لذلك لن تحتاج إلى تسجيل الدخول مرة أخرى. الحساب الذي تستخدمه في &quot;ألعاب Google Play&quot; عند بدء جلسة اللعبة هو الحساب الذي يتم إصدار طلبات البيانات من واجهة برمجة التطبيقات منه. عند بدء عملية شراء في المتصفّح، يجب تسجيل الدخول واستخدام الحساب نفسه المستخدَم في جلسة اللعبة. إذا كان المستخدم مسجّلاً الدخول باستخدام حساب مختلف، سيطلب منه مسار الويب التبديل إلى حساب آخر.

  14. هل يمكن أن تتوافق إحدى الألعاب مع حزمة SDK الأصلية وأنظمة الدفع القديمة في الوقت نفسه؟

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

Windows App Bundle

  1. عند إرسال حِزمة تطبيق Windows باستخدام مشغّل تابع لجهة خارجية، هل يجب إرسال حِزمة اللعبة للمراجعة؟

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

  2. هل هناك أي قيود على حجم ملف WAB؟

    يمكنك تحميل ملف يصل حجمه إلى 10 غيغابايت لتطبيق WAB.

  3. لماذا لا يتم تثبيت لعبتي أو ظهورها بعد تحميل حزمة تطبيق Android (WAB)؟

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

  4. كيف يمكنني تحميل حزمة تطبيق Wearable App Bundle لإجراء اختبار داخلي؟

    شارِك حسابات قائمة السماح مع Google لكي تتمكّن Google من تفعيلها لإجراء الاختبارات الداخلية. وبعد أن تتلقّى Google القائمة، ستتأكّد من تضمينها في عملية الإعداد.

  5. أين يجب تحميل حزمة WAB؟

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

PC SDK

  1. ما هي الاختلافات بين واجهة برمجة التطبيقات القديمة و"ألعاب Google Play على الكمبيوتر"؟

    SDK؟

    • لا توفّر واجهة برمجة التطبيقات القديمة سوى وظيفة الفوترة.
    • تتوافق حزمة تطوير البرامج للكمبيوتر مع &quot;خدمة Google للكمبيوتر المكتبي&quot; وكامل الميزات المتاحة على الكمبيوتر.
    • لا يلزم استخدام ميزة "تسجيل الدخول باستخدام Google" المستندة إلى المتصفّح مع حزمة تطوير البرامج (SDK) لأجهزة الكمبيوتر.
  2. هل هناك طريقة بديلة لتهيئة حزمة SDK من خلال تشغيل اللعبة مباشرةً باستخدام مشغّل الألعاب، بدون برنامج &quot;ألعاب Google Play على الكمبيوتر&quot;؟

    يجب تشغيل لعبتك من خلال برنامج "ألعاب Google Play على الكمبيوتر". لمزيد من التفاصيل، يُرجى الرجوع إلى مستند المطوّرين.

  3. هل تتيح حزمة تطوير البرامج (SDK) المخصّصة للكمبيوتر الشخصي استخدام أحرف متعددة البايت في ملف شهادة PEM؟

    نعم، يتيح حزمة تطوير البرامج (SDK) استخدام أحرف متعددة البايت للحصول على شهادة اعتماد.

  4. كيف تعالج حزمة SDK عملية تسجيل الدخول إلى حساب Google في حالات متعددة أو حسابات متعددة؟

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

  5. هل يعمل دمج واجهة برمجة التطبيقات Play Install Referrer API مع حزمة تطوير البرامج (SDK) لأجهزة الكمبيوتر؟

    تتيح حزمة تطوير البرامج (SDK) لأجهزة الكمبيوتر (الإصدار 25.5.409.0 والإصدارات الأحدث) استخدام واجهة برمجة التطبيقات Play Install Referrer API. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة Play Install Referrer API.

مشغِّل التطبيقات

  1. إذا كان أحد اللاعبين يستخدم مشغّلاً تابعًا لجهة خارجية بدلاً من &quot;عميل Google Play&quot;، هل تتم مزامنة حسابه على &quot;خدمات ألعاب Play&quot; تلقائيًا؟

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

  2. كيف يمكنني التعامل مع عملية الإعداد إذا شغّلت "ألعاب Google Play" مشغّل ألعاب تابعًا لجهة خارجية؟

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

  3. كيف يمكنني التعامل مع التحديثات والصيانة للعبة ومشغّلها بعد طرحهما؟

    يجب تنفيذ التحديثات والصيانة اللاحقة من خلال مشغّل التطبيقات. لا يتيح برنامج &quot;ألعاب Google Play&quot; وظائف التحديث، لذا يجب أن يكون المشغّل قادرًا على تحديث كل من اللعبة والمشغّل نفسه.

  4. كيف تتلقّى أداة التثبيت الرمز المميز للجلسة في خدمات ألعاب Google Play من أجل ميزة "التشغيل التلقائي"؟

    تُمرِّر أداة GPG الرمز المميز للجلسة باستخدام وسيطة سطر الأوامر --g_session_token=<token> إلى برنامج التثبيت. لتفعيل هذا الخيار، يجب ضبط acceptsCommandLineArguments="true" في play_publishing_config.xml.

    ويتحمّل برنامج التثبيت مسؤولية استخراج هذا الرمز المميّز واستخدامه لتشغيل اللعبة. في حال تعذُّر إنشاء الرمز المميّز، سيشغّل GPG أداة التثبيت بدون الرمز المميّز (الخيار الاحتياطي).

الإعداد

  1. عند بدء لعبة باستخدام تطبيق &quot;ألعاب Google Play&quot;، هل تتم مزامنة تفاصيل حسابي على Google؟

    بعد تشغيل اللعبة من خلال برنامج &quot;ألعاب Google Play&quot;، تتم مزامنة الحساب تلقائيًا، ولن تحتاج إلى تسجيل الدخول إلى Google مرة أخرى.

  2. هل يمكن إعادة استخدام مَعلمات الإعداد عدة مرات؟

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

  3. هل هناك أي طريقة لإنشاء اختصار لفتح اللعبة مباشرةً؟

    يمكنك استخدام معرّف الموارد المنتظم (URI) التالي لفتح اللعبة مباشرةً:

    googleplaygames://launch/?pid=2&id=com.company.gamename

    يتيح معرّف الموارد الموحّد (URI) رصد ما إذا كان برنامج ألعاب Google Play على الكمبيوتر مفتوحًا. وإذا لم يكن مفتوحًا، سيتم فتح برنامج ألعاب Google Play قبل تشغيل اللعبة أو مشغّلها. عليك إدارة اللعبة أو المشغّل لمنع تشغيل عدة مثيلات.

  4. هل هناك أي طريقة للتحقّق من عملية تثبيت &quot;ألعاب Google Play على الكمبيوتر&quot; بدون استخدام حزمة تطوير البرامج (SDK)؟

    يمكنك التحقّق من حالة تثبيت &quot;ألعاب Google Play على الكمبيوتر&quot; بدون دمج حزمة SDK من خلال البحث عن مفتاح سجل Windows التالي:

    HKEY_LOCAL_MACHINE\SOFTWARE\Google\Play Games Services

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

الاختبار

  1. هل تتوفّر أي بيئات اختبار مفتوح أو مغلق مشابهة لبيئة الأجهزة الجوّالة؟

    على الرغم من عدم توفّر بيئة اختبار مستقلة للتشفير التام بين الأطراف، ندرك حاجة المطوّرين إلى بيئة اختبار شبيهة ببيئة الإنتاج. سنتيح قريبًا حلاً أكثر فعالية.

  2. كيف يمكنني إضافة مختبِرين جدد؟

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

متنوعة

  1. هل يمكنني استخدام شبكة VPN؟

    بالنسبة إلى المطوّرين الذين يحتاجون إلى اختبار لعبتهم في مناطق لا يتوفّر فيها برنامج &quot;ألعاب Google Play على الكمبيوتر&quot;، ننصح باستخدام شبكة VPN للحصول على عنوان IP من منطقة يتوفّر فيها البرنامج.

    تأكَّد من تفعيل وضع TUN على شبكة VPN. يمكنك الاطّلاع على إرشادات حول تفعيل وضع TUN وضبط جدار الحماية في دليل التشغيل الخاص بمزوّد خدمة VPN.

    بعد تفعيل وضع TUN، عليك تثبيت برنامج &quot;ألعاب Google Play على الكمبيوتر&quot; والمحاكي لأغراض الاختبار.

  2. كيف يمكنني بدء التطوير لـ &quot;ألعاب Google Play على الكمبيوتر&quot; في Unity أو UE Editor؟

  3. كيف يمكنني استخدام مفاتيح التسجيل بشكل صحيح؟

    يجب إنشاء مفاتيح التسجيل استنادًا إلى خلية الجذر. يمكنك ضبط خلية الجذر على HKEY_LOCAL_MACHINE أو HKEY_CURRENT_USER حسب الغرض وطبيعة البيانات. يتم استخدام HKEY_LOCAL_MACHINE خلية النحل كمثال في الإرشادات.

  4. ما هي متطلبات مراجعة حِزم الكمبيوتر الشخصي في Google؟

    تخضع حِزم الكمبيوتر لعملية فحص بحثًا عن البرامج الضارة، وبعد ذلك يختبر المراجعون عمليات تثبيت اللعبة وبدء تشغيلها وإلغاء تثبيتها فقط.

  5. هل من الضروري دمج جميع واجهات برمجة التطبيقات؟

    لا يُشترط استخدام واجهات برمجة التطبيقات الأخرى، ولكنّها تقدّم مزايا إضافية. ويُشترط استخدام google::play::billing لإجراء عمليات الشراء داخل التطبيق وبيع المحتوى الرقمي، واستخدام google::play::install_referrer لتتبُّع بيانات الإحالة التي تساعدك في معرفة مصادر الزيارات التي تجذب أكبر عدد من المستخدمين لتنزيل تطبيقك، واستخدام google::play::games::integrity لحماية تطبيقك من الجهات المسيئة من خلال رصد الأجهزة التي يُحتمل أن تكون محفوفة بالمخاطر والمحاكيات غير المعروفة.

  6. لماذا يتم إنهاء بعض عمليات الألعاب عند إغلاق تطبيق &quot;ألعاب Google Play&quot;، بينما لا يتم إنهاء البعض الآخر؟

    لا تتحكّم Google في العمليات الفرعية أو عمليات اللعبة قيد التشغيل. ويعتمد السلوك على ما إذا كانت اللعبة هي لعبة محاكية لنظام Android أو لعبة أصلية على الكمبيوتر. يتم تثبيت الألعاب المحاكية داخل بيئتها الخاصة، لذا يعتمد سلوكها بشكل كبير على عملية بدء المحاكي وإيقافه.

  7. هل يجب استخدام ميزة إلغاء تثبيت "ألعاب Google Play" أو أداة إلغاء تثبيت مخصّصة؟

    تنصح Google باستخدام إمكانية إلغاء تثبيت تطبيق "ألعاب Google Play".

مساعدة إضافية

إذا كنت بحاجة إلى مزيد من المساعدة غير الموضّحة في هذه الأسئلة الشائعة، يُرجى التواصل معنا على google-play-games-pc@google.com