ในการพัฒนา Android application นั้นส่วนใหญ่จะทำงานอยู่บน Android Studio
แต่ในการทำงานจริง ๆ นั้น สิ่งที่นักพัฒนาต้องใช้งานเป็นคือ command line
ใน Android Studio ก็มี command line หรือ terminal ให้ใช้นะ
ลองหัดใช้งานดูกันได้
แต่สิ่งที่ยากคือ มีคำสั่งอะไรให้ใช้งานบ้าง ? ดังนั้นมาดูกัน
เริ่มด้วยสิ่งแรกที่น่าจะต้องใช้กันบ้างคือ Gradle
ใครบ้างที่ไม่เคยพิมพ์คำสั่ง gradlew ใน command line ? ถ้าไม่เคยนี่ ถือว่าบาปมาก ๆ ดังนั้นทำก่อนเลย คำสั่ง gradlew คืออะไร ? มันคือ Gradle Wrapper หรือสิ่งที่มาหุ้มการทำงานของ gradle นั่นเอง จะทำการอ่านข้อมูลจากไฟล์ /gradle/wrapper/gradle-wrapper.properties [gist id="cc18f483b8a7a5c14ea540e6c73aca48" file="gradle-wrapper.properties"] ดังนั้นถ้าไม่เคยใช้งาน จะทำการ download gradle ตามสิ่งที่กำหนดไว้ใน distributionUrl อาจจะเจอปัญหาเรื่อง JAVA_HOME และ ANDROID_HOME กันอีก ก็ต้องแก้ไขกันต่อไป คำสั่งที่ควรต้องรู้เช่น [code] $gradlew tasks //สำหรับแสดง task ทั้งหมดที่ใช้ได้ $gradlew test //สำหรับทดสอบในระดับ unit test $gradlew cAT //สำหรับทดสอบ Instrumentation test $gradlew assemble //สำหรับสร้างไฟล์ APK $gradlew install //สำหรับติดตั้ง app บน device $gradlew test --offline //สำหรับการ run ใน offline mode [/code]ต่อมาเป็นสิ่งที่ผมใช้บ่อย ๆ คือ การค้นหา library ด้วย ALFI
ซึ่งสามารถ copy มาใส่ในไฟล์ build.gradle ได้เลย เช่นค้นหา library ชื่อ glideต่อมาทำการทดสอบ Library ต่าง ๆ ผ่าน DryRun
ปกติการนำ library ที่ developer คนอื่น ๆ ทำไว้นั้น บ่อยครั้งเราต้อง- ทำการ download จาก github
- ทำการ sync และ download library
- ทำการ run project หรือ sample project ดู
- ทำการทดสอบตามที่ต้องการ
- ทำการลบทิ้งไปเมื่อมันไม่ใช่
ต่อมาสำหรับคนที่เขียน Unit test
ปกติแล้วนั้นถ้าสังเกตุให้ดี ๆ ในการ run unit test นั้น จะไม่แสดงผลการทำงานใด ๆ ออกมา ยกเว้นผลการทำงานรวมว่า ผ่าน หรือ ไม่ผ่าน คำถามคือ ถ้าอยากเห็นว่าแต่ละ test case เป็นอย่างไร ? คำตอบคือ ก็ไปดูใน report ไงล่ะ !! แต่มันไม่น่าจะใช่นะ สิ่งที่ต้องการคือ แสดงผลการทำงานใน command line หรือ terminal นี่แหละ ดังนั้นสิ่งที่แนะนำคือ การ configuration ในไฟล์ build.gradle ดังนี้ [gist id="cc18f483b8a7a5c14ea540e6c73aca48" file="build.gradle"] ผลการทำงานเป็นดังนี้ [code] $gradlew test [/code]สิ่งสุดท้ายคือ การจัดการ logcat ให้ดูง่าย ๆ
ถ้าใช้งานผ่าน Android Studio น่าจะต้องเข้ามา custom ที่ Preference กันบ้าง สำหรับ command line ก็มีนะคือ pidcat ใช้งานง่าย ๆ คือ [code] $pidcat <package name ของ app> [/code] แสดงผลการทำงานดังรูปสุดท้ายแล้ว Developer ที่ดีควรต้องเรียนรู้การใช้งาน command line เพื่อเพิ่ม productivity ของการพัฒนานะปล. ยังมี adb อีกนะ !!