Home / Developer  / Android Developer  / เขียนแอพฯ Android สร้างระบบ Authentication บน Firebase

เขียนแอพฯ Android สร้างระบบ Authentication บน Firebase

แนวทางการสร้างระบบ Authentication บน Firebase สำหรับแอพฯ Android เพื่อดึงฐานข้อมูลจาก Firebase มาเข้าระบบ Login อย่างง่าย

ทบทวนบทเรียนการเขียนแอพฯ Android ได้ที่นี่ เขียนแอพ Android

บทเรียนนี้สามารถศึกษาการติดตั้งและทำงานร่วมกับ Firebase มาก่อนศึกษาได้จากบทความนี้

เขียนแอพฯ Android เชื่อมต่อ FireBase เป็นฐานข้อมูล

ในบทเรียนนี้เราจะใช้ฐานข้อมูลส่วนของ Authentication ของ Firebase ซึ่งเราจะมีการเปิดใช้งานและใส่ข้อมูลผู้ใช้เข้าไปแล้วที่ DEVELOP -> Authentication

สร้าง Project ใหม่ขึ้นมาบน Android Studio ทำการติดตั้ง Firebase ให้เรียบร้อยตามบทความก่อนหน้านี้ที่ระบุไว้ตามตัวอย่าง เขียนแอพฯ Android เชื่อมต่อ FireBase เป็นฐานข้อมูล

ออกแบบหน้าจอ content_main.xml ดังนี้

แก้ไขไฟล์ strings.xml เพิ่มเติมดังนี้

รอบนี้เราจะเตรียม ข้อความสำหรับคำเตือนต่างๆ เช่น รหัสผ่านใช้  6 หลักก็จะเตือน minimum_password เป็นชุด String ว่า Please insert 6 digits และ auth_failed กรณีที่ Login ไม่ผ่านด้วยครับ เมื่อชุด Strings พร้อมแล้วก็เปิดไฟล์ MainActivity.java มาเขียนโปรแกรมกันดีกว่า

สร้าง Globa Var ขึ้นมารับค่าทั้ง EditText, Button และ ProgressBar อย่าลืมส่วนของ FirebaseAuth ครับ ดังนั้น Header จะประกอบไปด้วย

ภายใน Method OnCreate ให้สร้างฟังก์ชันสำหรับ Authentication ดังนี้

เป็นการตรวจสอบการเข้าระบบ Session ผ่านการตรวจ

ถ้ามี Session อยู่จะ finish(); ทันทีโดยมี Toast แจ้งเตือนว่า “Ok, you already logged in!” ดังนั้นให้เราสร้าง setOnClickListener() ของปุ่ม login_action() ดังนี้ครับเพื่อทำการกดเข้าระบบแล้ว Login ทันที

ทดสอบแอพฯ ของเราโดยการ Run ดูครับ

ทำการเข้าระบบด้วย Email และ Password กดปุ่ม Login เมื่อเรากรอกข้อมูลที่ตรงกับที่เรากำหนดใน Firebase ของเรา

เข้าระบบได้จะมี Toast เตือนแล้วปิดแอพฯ

เราจะตรวจสอบ Session ของแอพฯ เรายังไงดีว่า มีการ Authentication ไปแล้วง่ายๆ ครับให้สร้างตัว Check Session ขึ้นมาแล้วถ้ามี Session อยู่ให้เรา Intent ไปยังหน้าที่บอกว่าเราเข้าระบบแล้วไปเลย

สร้าง New Activity ขึ้นมาเป็น BasicActivity กำหนดชื่อว่า ProfileActivity ครับ

สร้าง Basic Activity แล้วออกแบบหน้าจอตามตัวอย่างโดยมีปุ่ม SignOut ตั้ง ID ว่า logout_action เพื่อออกจากระบบเมื่อกดครับ

ไฟล์ content_profile.xml จะเป็นดังนี้

ไปที่ไฟล์ MainActivity ใหม่แก้ไขส่วนของบรรทัด

เป็น

และเพิ่มส่วนของ //authenticate user แก้ไขเป็นดังนี้

ดังนั้นไฟล์ MainActivity.java จะมีภาพรวม Source Code ดังนี้

กลับไปส่วนของหน้า Session อย่าง ProfileActivity.java ให้เราสร้างเมธอด SignOut() ใหม่ขึ้นมาดังนี้

ส่วนการเรียกใช้ให้อยู่ใน Action ส่วนของ setOnClickListener() ของ logout_action ที่เป็น Button ครับ ภาพรวมของ ProfileActivity.java จะเป็นดังนี้

ทดสอบแอพฯ ของเราได้เลยครับ ให้ลองเข้าระบบดูจะเห็นว่าหน้าจอแอพฯ เราจะไปหน้านี้

ถ้ากดปุ่ม Sign Out ก็จะเห็นว่าหน้าจอจะกลับมาหน้าเข้าสู่ระบบ MainActivity.java เช่นเคยพร้อม Toast ว่า “Logged Out”

จบล่ะ นี่ก็จะเป็นเพียงบทเรียนง่ายๆ สำหรับการสร้างระบบ Authentication ด้วย Firebase บน Android สำหรับมือใหม่ครับ

Comments

daydevthailand@gmail.com

อาจารย์ประจำสาขาวิชาการออกแบบเชิงโต้ตอบ และการพัฒนาเกม วิทยาลัยครีเอทีฟดีไซน์ & เอ็นเตอร์เทนเมนต์เทคโนโลยี มหาวิทยาลัยธุรกิจบัณฑิตย์ ,ผู้ก่อตั้ง บริษัท Daydev Co., Ltd, (เดย์เดฟ จำกัด)

Review overview
NO COMMENTS

Sorry, the comment form is closed at this time.