Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Android SDK
Code

الشروع في استخدام خدمات ألعاب Google Play

Difficulty:IntermediateLength:MediumLanguages:

Arabic (العربية/عربي) translation by Diangr (you can also view the original English article)

تقنيات الألعاب تتطور باستمرار. ومع ذلك، لم يطرأ الكثير من عناصر اللعبة الأساسية لعقود من الزمان. درجات عالية، المتصدرين، وأسئلة، والإنجازات، والدعم المتعدد أمثلة. إذا كنت تقوم بتطوير لعبة لمنصة الروبوت، لم يكن لديك لتنفيذ أي من هذه العناصر يدوياً. يمكنك ببساطة استخدام Google Play games services APIs بدلاً من ذلك.

في هذا البرنامج التعليمي، سوف تظهر لك كيفية إنشاء لعبة Android بسيطة وإضافة خدمات Google Play game لأنه استخدم المتصدرين والإنجازات APIs.

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

لتكون قادراً على متابعة هذا البرنامج التعليمي، ستحتاج إلى ما يلي:

1-إنشاء بسيطة لعبة

لا يوجد أي متعة في إضافة خدمات ألعاب اللعب APIs لمشروع Android Studio project. ولذلك، دعونا الآن إنشاء لعبة فيها مكاسب المستخدم النقاط بمجرد النقر على زر. أكثر دقة، سوف يكون هدف اللعبة النقر على زر قدر الإمكان داخل 60 ثانية.

الخطوة 1: إنشاء تخطيط لعبة

تخطيط اللعبة وسيكون القطعة Button واحد، الذي سوف انقر فوق المستخدم للحصول على نقاط، والحاجيات TextView اثنين لعرض النتيجة والوقت المتبقي. إذا وضعت كل منهم داخل RelativeLayout وتوسيطهم أفقياً وعمودياً، ينبغي أن يكون لديك ملف تخطيط يشبه هذا:

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

لاحظ أن كل الأزرار سمات onClick. سوف ننشئ أنها تشير إلى أساليب جافا في خطوات لاحقة.

الخطوة 2: تنفيذ منطق اللعبة

داخل النشاط، وإنشاء عضو متغيرات للحاجيات اللعب وحددنا في ملف XML تخطيط. بالإضافة إلى ذلك، إنشاء متغير int للدرجة ومتغير boolean للدولة في اللعبة.

تهيئة الحاجيات داخل الأسلوب ()onCreate للنشاط باستخدام الأسلوب ()findViewById.

للاستماع للنقرات على Button القطعة وإنشاء وإضافة OnClickListener لذلك.

الآن يجب علينا أن ننفذ بالمتطلبات التالية:

  • في المرة الأولى قيام المستخدم بالنقر فوق الزر، يجب أن تبدأ اللعبة.
  • كل نقرة اللاحقة ينبغي زيادة المتغير score.
  • يجب أن تنتهي اللعبة عندما انقضت مدة 60 ثانية.

يمكننا استخدام المتغير playing للتفريق بين النقرة الأولى وجميع النقرات اللاحقة. لتعقب الوقت، يمكننا استخدام مجردة فئة CountDownTimer, والذي يعتبر مثاليا لمتطلباتنا. أنها طريقة ()onTick في الداخل، الذي يمكن تحديث timeView لعرض عدد الثواني المتبقية بدقة. كما أن أسلوب ()onFinish، وهو ما يسمى عند العد التنازلي قد انتهت.

وبناء على ذلك، أضف التعليمات البرمجية التالية إلى الأسلوب ()onClick:

عند هذه النقطة، يمكنك تشغيل المشروع للعب اللعبة.

Game interface

2-إضافة تبعيات خدمات الألعاب

تكوين مشروع لاستخدام خدمات ألعاب اللعب APIs ينطوي على الكثير من الخطوات. باستخدام Android Studio's Firebase Assistant، يمكنك أتمتة بعض منهم.

فتح نافذة المساعد عن طريق الذهاب إلى Tools > Firebase. المقبل، في Analytics المقطع، انقر فوق Log an Analytics event صلة . يمكنك الآن الاتصال المشروع Android Studio الخاص بك إلى مشروع قاعدة بالنقر فوق الزر Connect to Firebase. تأكد من أن تختار الخيار Create new Firebase project في مربع الحوار للملوثات العضوية الثابتة.

Connect to Firebase dialog

بعد إنشاء الاتصال ، اضغط على الزر Add Analytics to your app لإضافة جميع التغييرات المطلوبة إلى ملفات build.gradle.

يجب عليك إضافة تبعية للعب ألعاب الخدمات يدوياً. ولذلك، انتقل إلى الملف build.gradle في الوحدة النمطية app وإضافة تبعية compile البرمجي التالية:

وعلاوة على ذلك، تحتاج خدمات ألعاب APIs إلى ملف تكوين XML. قم بإنشاء واحد يسمى games.ids.xml داخل مجلد res/values. سنقوم بإضافة المحتوى إليها في خطوة لاحقة.

3-تسجيل اللعبة

يجب تسجيل جميع الألعاب التي تستخدم خدمات Google Play games على وحدة Play developer console. سيكون لديك لدفع رسوم تسجيل مرة واحدة من 25$ لتكون قادرة على الوصول إلى وحدة التحكم.

في وحدة التحكم، وانقر على أيقونة gamepad لفتح شاشة Game Services.

Game services screen

انقر فوق التالي، في Set up Google Play game services زر لبدء تشغيل تسجيل اللعبة.

في مربع الحوار هذا للملوثات العضوية الثابتة، اختر علامة التبويب الثانية لأن لدينا لعبة هو بالفعل باستخدام Google APIs. الآن يجب أن تكون قادراً على رؤية اسم المشروع قاعدة الخاص بك في قائمة المشروعات المتاحة. وبعد تحديد ذلك، اختر فئة اللعبة. الآن، يمكنك الذهاب مع فئة Casual.

Choose your console project

بعد الضغط على Continue، يمكنك ربط قاعدة تحليلات وخدمات الألعاب اللعب بالنقر فوق الزر Link Firebase.

بعد ذلك، انتقل إلى المقطع Linked apps لربط مشروع Android Studio الخاص بك إلى وحدة تحكم المطور اللعب. في مربع الحوار هذا للملوثات العضوية الثابتة، اضغط على زر Android ونوع في اسم الحزمة للمشروع الخاص بك في الحقل Package name.

Link an Android app screen

اضغط على Save and continue زر لإنشاء معرف عميل الخاصة بك لعبة.

Client ID display screen

لعبة لدينا الآن مسجلة بنجاح مع وحدة تحكم المطور اللعب Google.

4-إضافة مستخدم الاختبار

خدمات ألعاب اللعب APIs ستعمل فقط إذا كان يتم نشر اللعبة على Google Play. ومع ذلك، تسمح لك باختبار اللعبة الخاصة بك، وحدة تحكم المطور يتيح لك إقران حسابات المستخدم اختبار عدد قليل. بالانتقال إلى المقطع Testing، يمكنك إضافة أو إزالة حسابات المستخدم للاختبار. تأكد من أن قمت بإضافة  Google account يمكنك استخدامها على هاتفك أو المحاكي هنا.

Testing access screen

5-إنشاء المتصدرين

المتصدرين ليس سوى شاشة عرض درجات عالية من المستخدمين. لعب ألعاب خدمات المتصدرين تسمح للمستخدمين بمشاهدة درجاتهم العالية اليومية والأسبوعية وجميع الأوقات.

إنشاء المتصدرين في وحدة تحكم المطور اللعب يأخذ عدد قليل من النقرات. الانتقال إلى Leaderboards واضغط على زر Add leaderboard . في الشاشة التالية، تعطي اسماً ذا معنى للمتصدرين واضغط على زر Save.

Leaderboard creation screen

نحن المتصدرين جاهز الآن.

6-إنشاء إنجازا

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

في هذا البرنامج التعليمي، سنقوم بإضافة إنجاز واحد فقط اللعبة. سوف يكون اسمها Lightning Fast، وأنها سوف تكون مقفلة عندما تمكن المستخدم من اضغط على زر أكثر من 100 مرة في دقيقة. لإنشاء تحقيق، انتقل إلى قسم Achievements واضغط على زر Add achievement. بعد كتابة في الاسم ووصف الإنجاز، اضغط على الزر Save.

Achievement creation screen

7-تحديث تكوين لعبة إكس XML

المتصدرين وتحقيق لها معرفات فريدة من نوعها. يجب أن نضيف الآن تلك المعرفات لمشروعنا Android Studio، جنبا إلى جنب مع معرف التطبيق التي تم إنشاؤها أثناء عملية التسجيل. يمكنك القيام بذلك عن طريق يدوياً تحديث الملف games-ids.xml أنشأنا في وقت سابق. ومع ذلك، اقترح أن تستخدم التعليمات البرمجية التي يتم إنشاؤها تلقائياً تكوين المتوفرة في وحدة تحكم المطور.

للحصول على التعليمات البرمجية المنشأة تلقائياً تكوين، يمكنك الذهاب إلى قسم Achievements أو المقطع Leaderboards، واضغط على وصلة الحصول Get resources. سوف تشاهد XML في التعليمات البرمجية التي تبدو مثل هذا:

نسخ كافة التعليمات البرمجية ولصقها في ملف games-ids.xml للمشروع الخاص بك.

8-الاتصال بتشغيل خدمات الألعاب

قبل استخدام المتصدرين والإنجازات APIs، يجب علينا إنشاء مثيل GoogleApiClient وتوصيله إلى اللعب ألعاب خدمات. ولذلك، إضافة كائن GoogleApiClient كمتغير عضو للنشاط الخاص بك.

يجب علينا استخدام فئة GoogleApiClient.Builder لبناء مثيل GoogleApiClient. في حين أن بناء العميل، يمكننا تحديد API و API نطاق نحن مهتمون باستخدام أساليب ()addApi و ()addScope.

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

وبناء على ذلك، أضف التعليمات البرمجية التالية في بداية الأسلوب ()onCreate:

إذا قمت بتشغيل التطبيق الآن، سوف تتم مطالبتك بإنشاء "معرف اللاعب" لنفسك. اكتب معرف Gamer من اختيارك واضغط على زر Sign in.

Sign in to Play Games dialog

9-استخدام المتصدرين

تقديم نقاط للمتصدرين يأخذ سطر واحد فقط من التعليمات البرمجية. كل ما عليك القيام به استدعاء الأسلوب ()submitScore للفئة Games.Leaderboards. كالوسيطات الخاصة بها، فإنها تتوقع لمثيل GoogleApiClient، معرف المتصدرين، والنتيجة.

في المباراة، يجب أن نقدم النتيجة في نهاية مدة 60 ثانية. ولذلك، أضف التعليمات البرمجية التالية إلى الأسلوب ()onFinish:

لعرض المتصدرين، يجب أن نبدأ نشاط جديد بقصد المتصدرين. إحضار النية المتصدرين، استدعاء الأسلوب ()getLeaderboardIntent من فئة Games.Leaderboards وتمرير مثيل GoogleApiClient ومعرف المتصدرين لذلك.

تخطيط لدينا لعبة الفعل يحتوي على زر يمكن الضغط لفتح المتصدرين. قيمة السمة onClick به showLeaderboard. ولذلك، أضف التعليمات البرمجية التالية إلى النشاط الخاص بك:

يمكنك تشغيل التطبيق الآن وتلعب اللعبة مرة أخرى. هذه المرة، عندما في اللعبة أكثر، سيقدم إلى المتصدرين درجة الخاصة بك. هنا ما يبدو وكأنه المتصدرين الافتراضي:

Leaderboard window

10-تستخدم في تحقيق

بواسطة استدعاء الأسلوب ()unlock من فئة Games.Achievements، يمكنك فتح أي تحقيق. وتتوقع الأسلوب مثيل GoogleApiClient ومعرف هذا الإنجاز كالوسيطات الخاصة بها فقط.

تحقيق سرعة البرق وحددنا في وحدة التحكم، يجب أن تكون مقفلة عند تقاطع 100 نقطة من نقاط المستخدم. ولذلك، مباشرة بعد التعليمة البرمجية لزيادة النتيجة، أضف التعليمات البرمجية التالية:

التعليمات البرمجية المطلوبة لعرض هذه الشاشات الإنجازات مشابهة جداً لواحد كتبنا إلى عرض شاشة المتصدرين. كل ما عليك القيام به تمرير قيمة الإرجاع للأسلوب ()getAchievementsIntent إلى الأسلوب ()startActivityForResult.

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

Achievement pop up

الاستنتاج

تعرف الآن كيفية استخدام خدمات Google Play services APIs في مشروع Android Studio الخاص بك. خدمات ألعاب اللعب لا تقتصر على منصة الروبوت وحدها. يمكن استخدامها بسهولة في مناهج كل من شبكة الإنترنت ودائرة الرقابة الداخلية أيضا. حتى اللعب ألعاب خدمات تسمح لك لإنشاء الألعاب عبر منصة وتقدم الخبرات الألعاب متسقة للمستخدمين على منصات متعددة.

لمعرفة المزيد حول Google Play games services APIs، يمكنك الرجوع إلى تلك official guides أو، حتى أفضل، راجع بعض الدروس لدينا هنا في Envato Tuts +!


Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.