2. สร้าง Activity ขึ้นมา 3 Activity
- Login Activity
- Home Activity
- Detail Activity
2.1 ค่าเริ่มต้น Navigate มาหน้า Login Activity
3. หน้า Login Page มี UI ดังนี้
3.1 ช่อง input Email
3.2 ช่อง input Password
3.3 ปุ่มเข้าสู่ระบบ
3.4 เพิ่ม Validation
- ตรวจสอบ Format Email โดยใช้ Regex
- ตรวจสอบความรหัสผ่าน ความยาว 8 ตัวขึ้นไป
3.5 เมื่อกดปุ่มเข้าสู่ระบบ ตรวจสอบ Email = [email protected] และ Password = 12345678
- ถ้าถูกต้อง Navigate ไปหน้า Home Activity
- ถ้าผิดให้ Toast หรือ AlertDialog ข้อความ "Email or password incorrect"
4. หน้า Home Activity มีเงื่อนไขตามนี้
4.1 เน้นการใช้เครื่องมือและไลบรารีที่ทันสมัย
4.2 fetch ข้อมูล GET: https://dummyjson.com/products
4.3 แสดงข้อมูลที่ fetch โดยใช้ Recyclerview เป็น Card สวยงาม มีข้อมูลดังนี้
![Screenshot 2567-05-24 at 14 41 20](https://private-user-images.githubusercontent.com/13812385/333497738-7c8946c9-e2f3-473c-84c4-9b309021f231.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTk1NTg5MDEsIm5iZiI6MTcxOTU1ODYwMSwicGF0aCI6Ii8xMzgxMjM4NS8zMzM0OTc3MzgtN2M4OTQ2YzktZTJmMy00NzNjLTg0YzQtOWIzMDkwMjFmMjMxLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA2MjglMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNjI4VDA3MTAwMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTM5NjRhMTIxMWE5YzI5MWY5ZmI2YzVhNTA2YzYxOWU4YjllZjFjMjUyYjYzNzA0MzFiZWZlYTE4MjE0MGM5MDYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.yccyTvye596Y_RZEEQCzTNwY2O3zq_-1X7_Fa9QATcQ)
- Thumbnail
- Title
- Price
- Stock
- ปุ่ม Detail
4.4 เมือกดปุ่ม Detail ให้ส่ง id product ผ่าน params ไปหน้า Detail Activity
5. เพิ่ม input ช่องค้นหาข้อมูลสินค้า ค้นหาชื่อสินค้าแบบ Debound Time(1 วินาที) และ contain string ในหน้า Home Activity
6. เพิ่มปุ่ม Dropdown 5 เมนู ในหน้า Home Activity
- ทั้งหมด (แสดงสินค้าทั้งหมด)
- ราคามากว่า 1000 (กรองสินค้าที่มีราคา 1000 ขึ้นไป และมี %ส่วนลด มากกว่า 0)
- แสดงราคารวมต่อชิ้น (เพิ่ม Column ขึ้นมาอีก 1 Column สำหรับแสดง ราคารวมต่อชิ้น) [เพิ่ม key totalPrice เข้าไปใน data class Product เพื่อแสดงใน column]
- เรียงเรตติ้ง (เรียง rating สินค้าแบบ desc และ price แบบ asc)
- แสดงราคารวมทั้งหมด (คำนวนราคาสินค้าทั้งหมด ของ array สินค้า) [เพิ่ม Label ราคารวม ไว้เป็น Header Recyclerview]
7. หน้า Detail Activity
7.1 Get id product จาก params และ fetch ข้อมูลสินค้า GET:https://dummyjson.com/products/:id
7.2 แสดงข้อมูลสินค้า ตามสวยงาม
- Images 150*150
- Title
- Price
- Stock
8. ปริ้นข้อความใน Life Cycle ต่างๆ ของ Activity ในหน้า Detail Page
9. เพิ่ม Interceptor http
9.1 Add header key CMReq = “request” ตอน Request http
9.2 Add header key CMERes = “response” ตอน Response http
10. กำหนดค่าเริ่มต้น Navigate path
10.1 ถ้า ยังไม่ได้ Login ให้ Navigate มาหน้า Login Activity
10.2 ถ้า Login แล้วให้ Navigate มาหน้า Home Activity