ใบงานฝึกปฏิบัติ สัปดาห์ที่ 6: MyDiary
การส่ง: ไฟล์ APK + คลิปเปิดแอปจากมือถือจริง
Lab 1 ทำไอคอนและชื่อให้สมบูรณ์
เป้าหมาย: ให้แอปมีเอกลักษณ์ของตัวเอง
ขั้นที่ 1 ออกแบบ/หาไอคอนสี่เหลี่ยมจัตุรัส (1024×1024 PNG) ที่สื่อถึงแอป - ไดอารี → รูปสมุด/ปากกา - แอปการเงิน → รูปกระเป๋าเงิน/เหรียญ
ทำใน Canva (มี template ไอคอนแอป) หรือวาดเอง — ระวังลิขสิทธิ์
ขั้นที่ 2 วางไฟล์ที่ assets/icon.png แล้วตั้งค่าใน pubspec.yaml:
flutter_launcher_icons:
android: true
image_path: "assets/icon.png"
ขั้นที่ 3 สร้างไอคอน + ตั้งชื่อแอป:
flutter pub run flutter_launcher_icons
และแก้ android:label ใน AndroidManifest.xml เป็นชื่อแอป
ผลที่ควรได้: ไอคอน + ชื่อเป็นของตัวเอง (เห็นตอนติดตั้ง)
Lab 2 — build APK และตรวจสอบ
เป้าหมาย: สร้าง APK ที่ใช้งานได้จริง
ขั้นที่ 1 — ทดสอบ release ก่อน:
flutter run --release
ทดสอบให้ครบ: ล็อกอิน → เพิ่มบันทึก → ปิดเปิด → ข้อมูลอยู่ (Firebase ทำงาน)
ขั้นที่ 2 — build APK:
flutter build apk --release
ขั้นที่ 3 — หาไฟล์ที่ build/app/outputs/flutter-apk/app-release.apk
Lab 3 แก้ปัญหาที่พบบ่อยตอน build
เป้าหมาย: รู้วิธีแก้ปัญหา build ที่พบบ่อย
ปัญหา 1 build error เรื่อง minSdkVersion:
เปิด android/app/build.gradle หา minSdkVersion แก้เป็น:
minSdkVersion 23
Firebase ต้องการ Android 6.0 (API 23) ขึ้นไป
ปัญหา 2 APK เปิดแล้วค้าง/ต่อ Firebase ไม่ได้:
เช็ค android/app/src/main/AndroidManifest.xml มี INTERNET permission:
<uses-permission android:name="android.permission.INTERNET"/>
จำจากสัปดาห์ 3 ลืมแล้ว release ต่อเน็ตไม่ได้
ปัญหา 3 — ไอคอนไม่เปลี่ยน:
- รูปต้องเป็น PNG สี่เหลี่ยมจัตุรัส
- รันflutter pub run flutter_launcher_icons ใหม่
- ถอนแอปเก่าออกก่อนติดตั้งใหม่
กรณีไฟล์อยู่คนละ Drive: ปิด Kotlin incremental compilation (แก้ตรงจุด ไม่ต้องย้ายอะไร)
เปิดไฟล์ android/gradle.properties → เพิ่มบรรทัดนี้ลงไปท้ายไฟล์
kotlin.incremental=false
แล้วล้าง cache + build ใหม่:
flutter clean
flutter build apk --release
Lab 4 เขียนคู่มือแอปสั้นๆ
เป้าหมาย: ทำเอกสารแนะนำแอป (เหมือนหน้า Play Store)
เขียนไฟล์ README.md ในโปรเจกต์ (หรือเอกสารแยก) ประกอบด้วย
# ชื่อแอป
คำอธิบายสั้นๆ (1-2 ประโยค แอปทำอะไร)
## ฟีเจอร์
- ล็อกอินด้วยอีเมล
- เขียน/แก้/ลบบันทึก
- ข้อมูลเก็บบน cloud
- (ฟีเจอร์อื่นของคุณ)
## วิธีติดตั้ง
1. ดาวน์โหลด app-release.apk
2. เปิดไฟล์บนมือถือ Android
3. อนุญาตติดตั้งจากแหล่งไม่รู้จัก
4. เปิดแอป สมัครบัญชี เริ่มใช้
## ผู้พัฒนา
ชื่อ-รหัสนักศึกษา
เช็คลิสต์ก่อนส่ง
Lab 1 ไอคอน + ชื่อเป็นของตัวเอง
Lab 2 APK ทำงานครบทุกฟีเจอร์
Lab 3 แก้ปัญหา build ได้
Lab 4 README แนะนำแอป
ไฟล์ app-release.apk
คลิป: เปิดแอปจากมือถือจริง