تجربة تسجيل الدخول لنظام التشغيل Android

يمكنك استخدام نموذج التطبيق على Android للاطّلاع على آلية عمل ميزة "تسجيل الدخول" أو إضافة ميزة "تسجيل الدخول" إلى تطبيقك الحالي.

مطلوب: أحدث إصدارات استوديو Android وخدمات Google Play.

الحصول على المشروع

إذا كانت هذه هي المرة الأولى التي تستخدم فيها نموذج خدمات Google، يُرجى مراجعة مستودع خدمات Google.

$ git clone https://github.com/googlesamples/google-services.git

فتح "استوديو Android"

اختَر ملف > فتح، وتصفَّح للوصول إلى المكان الذي تم نسخ مستودع google-services إليه وافتح google-services/android/signin.

ضبط مشروع على Google API Console

لاستخدام النموذج، عليك إعداد مشروع على وحدة تحكّم Google API باستخدام برنامج Android وبرنامج تطبيق ويب:
  1. افتح مشروعًا حاليًا في وحدة تحكم واجهة برمجة التطبيقات أو أنشِئ مشروعًا إذا لم يكن لديك مشروع.
  2. في صفحة شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth، تأكَّد من أنّ جميع المعلومات كاملة ودقيقة.
  3. في صفحة "بيانات الاعتماد"، أنشئ معرِّف عميل من النوع Android. اسم الحزمة لنموذج التطبيق هو com.google.samples.quickstart.signin. وستحتاج أيضًا إلى توفير تجزئة SHA-1 من الملف المرجعي لشهادة التوقيع. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة مصادقة عميلك.
  4. في صفحة "بيانات الاعتماد"، أنشئ معرِّف عميل من نوع تطبيق ويب. يمكنك ترك حقلي "مصادر JavaScript المسموح بها" و"معرّفات الموارد المنتظمة (URI) المعتمَدة لإعادة التوجيه" فارغَين. يجب تضمين معرّف العميل على الويب هذا في أمثلة IdTokenActivity وServerAuthCodeActivity للنموذج. في التطبيق الفعلي، سيمثل معرّف العميل هذا خادم الخلفية لتطبيقك.
  5. انسخ معرِّف العميل والصقه في ملف strings.xml لمشروعك:

    <string name="server_client_id">YOUR_SERVER_CLIENT_ID</string>

تشغيل العيّنة

يمكنك الآن إنشاء العيّنة وتشغيله من "استوديو Android".

أنشئ النموذج وانقر على زر التشغيل واختَر جهازًا أو محاكيًا متصلاً باستخدام أحدث إصدار من "خدمات Google Play".

آلية العمل

ينشئ التطبيق GoogleSignInClient ويحدد خيارات تسجيل الدخول التي يحتاجها. بعد ذلك، عند النقر على زر تسجيل الدخول، يبدأ التطبيق في تنفيذ الغرض من تسجيل الدخول، والذي يطلب من المستخدم تسجيل الدخول باستخدام حساب Google.

// Configure sign-in to request the user's ID, email address, and basic
// profile. ID and basic profile are included in DEFAULT_SIGN_IN.
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
        .requestEmail()
        .build();
// Build a GoogleSignInClient with the options specified by gso.
mGoogleSignInClient = GoogleSignIn.getClient(this, gso);
private void signIn() {
    Intent signInIntent = mGoogleSignInClient.getSignInIntent();
    startActivityForResult(signInIntent, RC_SIGN_IN);
}

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

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

إضافة ميزة "تسجيل الدخول" إلى تطبيقك

هل خضت تجربة جيدة؟ هل تواجه مشكلة؟ يُرجى إعلامنا بذلك.