للوصول إلى وظائف "خدمات ألعاب Google Play"، يجب أن تتضمن لعبتك حساب اللاعب الذي سجّل الدخول إلى حسابه تصف هذه الوثائق كيفية تقديم تجربة تسجيل دخول سلسة إلى لعبتك
توفّر حزمة تطوير البرامج (SDK) للإصدار 2 من "خدمات ألعاب Play" عددًا من التحسينات وعدد المستخدمين الذين سجّلوا الدخول إلى لعبتك وتسهيل تطويرها:
- تحسينات للمستخدمين:
- بعد اختيار حساب تلقائي، يتم تسجيل دخول المستخدمين بدون الحاجة إلى التفاعل مع المطالبة.
- لم يعُد المستخدمون بحاجة إلى تنزيل تطبيق "ألعاب Play" لتسجيل الدخول باستخدام "خدمات ألعاب Play" أو إنشاء حساب جديد.
- يمكن للمستخدمين الآن إدارة حساباتهم على "خدمات ألعاب Play" لتشغيل ألعاب متعددة. من صفحة واحدة.
- تحسينات للمطوّرين:
- لم يعد رمز العميل بحاجة إلى معالجة عملية تسجيل الدخول أو الخروج، مثل عملية تسجيل الدخول تلقائيًا عند بدء اللعبة، ويتم تشغيل إدارة الحساب معالجتها في إعدادات نظام التشغيل.
دمج عملاء جدد
يعرض هذا القسم كيفية دمج عميل جديد مع "خدمات ألعاب Play". تسجيل الدخول الإصدار 2.
إضافة التبعية
إضافة الاعتمادية لحزمة تطوير البرامج (SDK) الخاصة بـ "خدمات ألعاب Play" إلى مستوى الجذر في تطبيقك
ملف build.gradle
. إذا كنت تستخدم Gradle، يمكنك إضافة
التبعية على النحو التالي:
dependencies {
implementation "com.google.android.gms:play-services-games-v2:+"
}
تحديد رقم تعريف المشروع
لإضافة رقم تعريف مشروع حزمة تطوير البرامج (SDK) الخاصة بـ "خدمات ألعاب Play" إلى تطبيقك، عليك إكمال الخطوات التالية:
في ملف
AndroidManifest.xml
لتطبيقك، أضِف العناصر التالية البالغ عددها<meta-data>
العنصر والسمات إلى العنصر<application>
:<manifest> <application> <meta-data android:name="com.google.android.gms.games.APP_ID" android:value="@string/game_services_project_id"/> </application> </manifest>
تحديد مرجع مورد السلسلة
@string/game_services_project_id
باستخدام رقم تعريف مشروع "خدمات الألعاب" في ألعابك كقيمة خدمات ألعابك يمكن العثور على رقم تعريف المشروع أسفل اسم لعبتك في صفحة الإعدادات على Google Play Console.في ملف
res/values/strings.xml
، أضِف مرجعًا لمصدر السلسلة. وتعيين معرّف مشروعك كقيمة. في Google Play Console، يمكنك العثور على رقم تعريف المشروع ضمن اسم اللعبة في صفحة الإعدادات. مثلاً:<!-- res/values/strings.xml --> <resources> <!-- Replace 0000000000 with your game’s project id. Example value shown above. --> <string translatable="false" name="game_services_project_id"> 0000000000 </string> </resources>
إعداد حزمة تطوير البرامج (SDK)
يجب إعداد حزمة تطوير البرامج (SDK) الخاصة بـ "ألعاب Play" في معاودة الاتصال "onCreate(..)
" على جهاز Application
.
الصف.
import com.google.android.gms.games.PlayGamesSdk;
...
@Override
public void onCreate(){
super.onCreate();
PlayGamesSdk.initialize(this);
}
الحصول على نتيجة تسجيل الدخول
عند تشغيل لعبتك، ستحاول دائمًا تسجيل دخول المستخدم. إلى عليك التحقق من تسجيل دخول المستخدم بنجاح، ثم تحصل على معرف اللاعب.
للتحقّق من محاولة تسجيل الدخول، يُرجى الاتصال بـ GamesSignInClient.isAuthenticated()
استخدم addOnCompleteListener
لاسترداد النتائج. مثلاً:
GamesSignInClient gamesSignInClient = PlayGames.getGamesSignInClient(getActivity());
gamesSignInClient.isAuthenticated().addOnCompleteListener(isAuthenticatedTask -> {
boolean isAuthenticated =
(isAuthenticatedTask.isSuccessful() &&
isAuthenticatedTask.getResult().isAuthenticated());
if (isAuthenticated) {
// Continue with Play Games Services
} else {
// Disable your integration with Play Games Services or show a
// login button to ask players to sign-in. Clicking it should
// call GamesSignInClient.signIn().
}
});
إذا اختار المستخدم عدم تسجيل الدخول عند تشغيل اللعبة، يمكنك اختيار
اختيار الاستمرار في عرض زر يحمل رمز "ألعاب Play"، ومحاولة
تسجيل دخول المستخدم مرة أخرى من خلال الاتصال بـ GamesSignInClient.signIn()
إذا كان المستخدم
يضغط على الزر.
بعد التأكّد من أنّ المستخدم قد سجّل دخوله، يمكنك استرداد "رقم تعريف المشغّل" من أجل التعرف على هوية المستخدم. مثلاً:
PlayGames.getPlayersClient(activity).getCurrentPlayer().addOnCompleteListener(mTask -> {
// Get PlayerID with mTask.getResult().getPlayerId()
}
);