ลองใช้ "ลงชื่อเข้าใช้" สําหรับ Android

ใช้แอปตัวอย่างใน Android เพื่อดูวิธีการทํางานของการลงชื่อเข้าใช้หรือเพิ่มการลงชื่อเข้าใช้ในแอปที่มีอยู่

จําเป็น: Android Studio และบริการ Google Play เวอร์ชันล่าสุด

รับโปรเจ็กต์

หากนี่เป็นครั้งแรกที่คุณใช้ตัวอย่างบริการของ Google โปรดดูที่เก็บ google-services

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

เปิด Android Studio

เลือกไฟล์ > เปิด เรียกดูตําแหน่งที่คุณโคลนที่เก็บ google-services แล้วเปิด google-services/android/signin

กําหนดค่าโปรเจ็กต์คอนโซล Google API

หากต้องการใช้ตัวอย่าง คุณต้องกําหนดค่าโปรเจ็กต์คอนโซล Google API ด้วยไคลเอ็นต์ Android และไคลเอ็นต์เว็บแอปพลิเคชัน
  1. เปิดโปรเจ็กต์ที่มีอยู่ในคอนโซล API หรือสร้างโปรเจ็กต์หากยังไม่มี
  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 Studio แล้ว

สร้างตัวอย่าง แล้วคลิกปุ่มเรียกใช้ แล้วเลือกอุปกรณ์หรือโปรแกรมจําลองที่เชื่อมต่อด้วยบริการ Google Play เวอร์ชันล่าสุด

ลักษณะการทำงาน

แอปพลิเคชันจะสร้าง GoogleSignInClient โดยระบุตัวเลือกการลงชื่อเข้าใช้ที่จําเป็น จากนั้นเมื่อมีการคลิกปุ่มลงชื่อเข้าใช้ แอปพลิเคชันจะเริ่ม Intent ให้ลงชื่อเข้าใช้ เพื่อให้ผู้ใช้ลงชื่อเข้าใช้ด้วยบัญชี 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 Sign-In ไปใช้ในแอปของคุณเอง โปรดดูคู่มือการติดตั้งใช้งาน

เพิ่มการลงชื่อเข้าใช้แอป

คุณได้รับประสบการณ์ที่ดีหรือไม่ หากพบปัญหา โปรดแจ้งให้เราทราบ