สำหรับพวกเราบางคนที่ใช้ Flutter รันแอพ Android ทดสอบในอุปกรณ์จริง บางครั้งอาจจะเจอปัญหาค้าง ตรงขั้นตอนการ Install แอพลงเครื่อง ซึ่งปัญหานี้มีวิธีแก้ได้ไม่ยากครับ
จะทำแบบนี้ได้ต้องมีการ set path ของ Android SDK ให้เรียบร้อยก่อนเริ่ม ดูขั้นตอนการ Setup คอมพิวเตอร์ให้พร้อมได้ในคอร์สออนไลน์ฟรี Google Flutter: Setup & Installation ที่นี่ครับ
ขั้นตอนแก้ปัญหาทั่วไป
จริงๆ ปัญหาการ Installing APK ค้างนี้เกิดขึ้นได้จากหลายสาเหตุ เพราะเป็นการทำงานระหว่างระบบ Android บนอุปกรณ์จริง และระบบ SDK ต่างๆ บนเครื่องของเรา เช่น
- Flutter SDK
- Java Development Kit (JDK)
- Android SDK
วิธีการทั่วไปได้แก่
- ปิดและเปิด Visual Studio Code ใหม่
- Restart อุปกรณ์พกพา
- Restart เครื่องคอมที่ใช้
วิธีการสั่งลบแอพที่อยู่บนอุปกรณ์ปลายทาง
สาเหตุที่พลและนักเรียนที่เอา Flutter ไปใช้งานจริงๆ ที่เจอเป็นระยะ คือการที่ระบบ Android SDK ไม่สามารถลบแอพตัวเดิมที่อยู่บนอุปกรณ์ปลายทางได้สมบูรณ์ ซึ่งทำให้การติดตั้งใหม่ติดปัญหา
ซึ่งวิธีการนี้สามารถแก้ไขได้ โดยการใช้คำสั่งผ่าน Terminal ดังด้านล่าง
adb uninstall <application id>
เช่นถ้า application id ของเราคือ th.in.nextflow.flutter.course.lab1
ก็ต้องเป็น
adb uninstall th.in.nextflow.flutter.course.lab1
ซึ่งจุดนี้จะเป็นการสั่งลบโดยตรงซึ่งได้ผลชะงัดนักครับ
แล้วจะหา Application ID จากไหน?
โอเค ทีนี้สำหรับคนที่อาจจะยังใหม่กับการทำแอพ Android ทั้ง Flutter หรือใช้ Kotlin ตรงนี้ สามารถเข้าไปที่ไฟล์ของโปรเจค Flutter ตามนี้:
- android > app > build.gradle
- เสร็จแล้วเลื่อนลงมาหาส่วนที่ชื่อว่า android > defaultConfig > applicationId ตัวนี้แหละที่เราต้องเอาไปใช้ในคำสั่งด้านบนครับ
android {
//...
defaultConfig {
applicationId "com.u21ctresearch.mobile.nativ2"
//..
}
}
ซึ่งในคอร์สวิดีโอออนไลน์ของพลจะมีสอนให้เข้าใจโครงสร้างการทำงานตรงนี้อยู่แล้ว ใครสนใจสนับสนุนพลก็ไปตำได้เลย