software development on android

สมัยก่อนเขียนโปรแกรมบน android ด้วย Qt/C++ ก็ปิดงานได้ แต่จำได้ว่าจะใช้ libray อะไรก็ไม่ค่อยสะดวก ต้องเอา source มาคอมไพล์เอง ถ้า dependency น้อยก็แล้วไป แต่ถ้าเยอะ ก็คงจบเห่

มาวันนี้ด้วยความช่วยเหลือของ ai ก็ตั้งโจทย์ขึ้นมา แล้วก็แทนที่จะต้องค้นหาคำตอบเองแบบเมื่อก่อน ซึ่งใช้เวลามาก เดี๋ยวนี้ง่ายดาย สรุปข้อมูลให้เราเสร็จสรรพ เหมาะกับการเป็นตัวช่วยในการ เรียนรู้จริงๆ แถมได้โปรแกรมจริงออกมาใช้งาน ในเวลาอันรวดเร็ว

ก่อนหน้านี้ บริษัทจัดหาบอร์ด android มาประกอบตู้คีออสให้ลูกค้าตามความต้องการ โดยปกติตู้คีออสที่ประกอบก็จะมี hardware หลักๆ คือ touchscreen, ตัวอ่านบัตรประชาชน, thermal printer และ 1D/2D scanner ทั้งหมดต่อผ่าน USB port
ดังนั้น โจทย์เริ่มต้น ของแอปที่จะทำก็ควรจะใช้งานอุปกรณ์พวกนี้ได้ดีเหมือนกับใช้งานบอร์ด intel กับ windows

เริ่มต้นด้วยการเลือก IDE ที่จะนำมาเขียน ง่ายๆใช้ android studio ก็จบ แต่ไม่ชอบ หลักๆคือ กินแรงเครื่องเยอะมาก ก็เลย เลือก jet brains fleet ซึ่งยังเป็นตัว preview ให้ใช้ฟรีอยู่
ในขั้นนี้ก็เจอปัญหาเลย fleet สร้างโปรเจ็คสำหรับ android ไม่ได้ อย่างง่ายสุดก็ต้องไปสร้างจาก android studio มาก่อน ซึ่งมันก็ยังงัยๆ ก็เลยคุยกับ ai จนได้ script เกือบสมบูรณ์ เพื่อใช้สร้างโปรเจ็คใหม่ แต่ก็ยังมีเรื่องปัญหาเรื่อง version ซึ่ง fleet รองรับยังไม่ล่าสุด ก็พยายามปรับแก้ให้ใช้เวอร์ขั่นที่ทำงานได้ กว่าจะจบกะอีแค่เรื่องของการสร้างโปรเจ็คใหม่ก็เหนื่อย

ตามมาด้วยเรื่องที่ 2 ก็คือ หัดใช้ adb และเปิดโหมด develop ให้บอร์ด เปิดโหมด wireless debugging ตอนแรกก็ยังงงๆ กับว่าต้องเชื่อมต่อกับ USB OTG ก่อนมั้ย แต่พอลองกับบอร์ดที่ 2 ก็ดูแล้วไม่ต้องนะ สามารถทำการ pair device ได้ อ่า ลืมไปละขั้นตอน เดี๋ยวต้องไปหามาบันทึกไว้หน่อย

เมื่อต่อ wireless debugging ได้ ทีนี้ก็เริ่มพัฒนาโปรแกรมได้ละ เปิด fleet ขึ้น สั่งรันโปรแกรมไปที่บอร์ดได้ สามารถเปิด logcat ดู log ดู error ได้

ในขั้นตอนการ deploy มันจะมีคำสั่งสร้าง .apk ด้วยนะ แต่ยังไม่สนใจตอนนี้ เพราะเวลาสั่งรันโปรแกรม ตัวโปรแกรมมันก็โดน copy ไปไว้บนบอร์ด สามารถสั่งรันได้โดยตรงเองอยู่ละ

ส่วนในขั้นตอนการพัฒนา ก็จะมีเรื่องของการทำ library เนื่องจากอยากทำโค้ดในส่วนของตัวอ่านบัตรประชาชน และ thermal printer ให้สามารถ reuse ได้ จึงหาวิธีทำเป็น library เอามา import ใส่ app หลักที่เขียนเป็น demo

ใส่ความเห็น