Section 1: รู้จัก LIFF และ LINE MINI App
LIFF คืออะไร ทำงานใน LINE และใน External Browser ต่างกันอย่างไร
ตัวอย่างการใช้งาน: จองคิว บัตรสมาชิก สะสมแต้ม และแบบฟอร์ม
ภาพรวมสถาปัตยกรรม: LIFF App, Backend, Messaging API และ LINE Official Account
ทิศทางการรวม LIFF เข้ากับ LINE MINI App และผลต่อการเริ่มโปรเจกต์ใหม่
Section 2: Lab: สร้าง Provider, Channel และ LIFF App
Provider และ Channel ใน LINE Developers Console
เลือกระหว่าง LINE Login Channel กับ LINE MINI App Channel
ตั้งค่า LIFF App: ขนาดหน้าจอ Full, Tall, Compact, Endpoint URL แบบ HTTPS และ Scope
Lab: สร้าง LIFF App แรกและเปิดผ่าน LIFF URL บนมือถือ
Section 3: Lab: ตั้งโปรเจกต์ด้วย React หรือ Next.js
ติดตั้ง @line/liff และเรียก liff.init() ครั้งเดียวต่อการโหลดหน้า
ใช้ Create LIFF App เป็นจุดเริ่มต้น และจัดการ LIFF ID ผ่าน Environment Variable
ทดสอบบนมือถือผ่าน HTTPS Tunnel และ Debug ด้วย LIFF Inspector
Lab: โครงแอป React ที่แสดงสถานะการเชื่อมต่อกับ LIFF
Section 4: Login และข้อมูลผู้ใช้
isInClient(), isLoggedIn(), login() และ logout() ในแต่ละสภาพแวดล้อม
getProfile(), getContext() และ getOS() สำหรับปรับการทำงานของแอป
Access Token กับ ID Token ต่างกันอย่างไร และทำไมต้องขอ Scope openid
Lab: หน้าโปรไฟล์ที่รองรับทั้งการเปิดใน LINE และใน Browser
Section 5: Lab: ส่งข้อความ แชร์ และเปิดหน้าต่าง
sendMessages() กับเงื่อนไขการใช้งานและ Scope chat_message.write
shareTargetPicker() สำหรับให้ผู้ใช้แชร์ไปยังเพื่อนหรือกลุ่ม
ส่ง Flex Message ที่ออกแบบเอง และใช้ openWindow() กับ closeWindow()
Lab: ปุ่มแชร์คูปองเป็น Flex Message ไปให้เพื่อน
Section 6: Lab: สแกน QR Code และออกแบบ UX ใน LINE
scanCodeV2() สำหรับสแกน QR Code และข้อจำกัดตามสภาพแวดล้อม
ออกแบบหน้าจอให้เหมาะกับขนาด LIFF และการใช้งานบนมือถือ
ลดขนาด SDK ด้วย Pluggable SDK และทดสอบด้วย LIFF Mock
Lab: หน้าเช็กอินหน้าร้านด้วยการสแกน QR Code