ใช้แอปตัวอย่างของ 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
- เปิดโปรเจ็กต์ที่มีอยู่ในคอนโซล API หรือสร้างโปรเจ็กต์หากยังไม่มี
- ในหน้าหน้าจอความยินยอม OAuth ให้ตรวจสอบว่าข้อมูลทั้งหมดครบถ้วนและถูกต้อง
-
ในหน้าข้อมูลเข้าสู่ระบบ ให้สร้างรหัสไคลเอ็นต์ประเภท Android ชื่อแพ็กเกจสำหรับแอปตัวอย่างคือ
com
นอกจากนี้ คุณจะต้องระบุแฮช SHA-1 จากลายนิ้วมือของใบรับรองที่ลงนามด้วย โปรดดูข้อมูลเพิ่มเติมที่การตรวจสอบสิทธิ์ไคลเอ็นต์.google .samples .quickstart .signin -
สร้างรหัสไคลเอ็นต์ประเภทเว็บแอปพลิเคชันในหน้าข้อมูลเข้าสู่ระบบ คุณเว้นช่องต้นทางของ JavaScript ที่ได้รับอนุญาตและ URI การเปลี่ยนเส้นทางที่ได้รับอนุญาตว่างไว้ได้ ต้องใช้รหัสไคลเอ็นต์ของเว็บนี้สำหรับตัวอย่าง
IdTokenActivity
และServerAuthCodeActivity
ของตัวอย่าง ในแอปจริง รหัสไคลเอ็นต์นี้จะแสดง เซิร์ฟเวอร์แบ็กเอนด์ของแอป -
คัดลอกและวางรหัสไคลเอ็นต์ลงในไฟล์
strings.xml
ของโปรเจ็กต์ ดังนี้<string name="server_client_id">YOUR_SERVER_CLIENT_ID</string>
เรียกใช้ตัวอย่าง
ตอนนี้คุณก็พร้อมสร้างตัวอย่างและเรียกใช้จาก Android Studio แล้ว
สร้างตัวอย่างแล้วคลิกปุ่มเรียกใช้ แล้วเลือกอุปกรณ์หรือโปรแกรมจำลองที่เชื่อมต่อด้วยบริการ Google Play เวอร์ชันล่าสุด
![](https://developers-dot-devsite-v2-prod.appspot.com/static/identity/sign-in/android/images/gmpSignInAndroidRunSample.png?authuser=19&hl=th)
วิธีการทำงาน
แอปพลิเคชันจะสร้าง 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 ในแอปของคุณเอง โปรดอ่านคู่มือการติดตั้งใช้งานของเรา
คุณได้รับประสบการณ์ที่ดีไหม หากพบปัญหา โปรดแจ้งให้เราทราบ