Android

[Android] บันทึกการเข้าอบรมหลักสูตร Effective Android Testing

สวัสดีครับ เมื่อวันที่ 25 – 26 เมษายน 2562 ที่ผ่านมา ผมได้มีโอกาสเข้าร่วมอบรมหลักสูตร Effective Android Testing ที่ Software Park มาครับ สำหรับหลักสูตรนี้สอนโดย อ.สมเกียรติ ปุ๋ยสูงเนิน เจ้าของเว็บไซต์ Somkiat.cc ผู้โด่งดัง ที่นักพัฒนาแอนดรอยด์ในประเทศไทยน้อยคนนักจะไม่รู้จัก โดยเฉพาะเรื่อง Testing บน Android ต้องคนนี้เท่านั้น เริ่มเลยดีกว่า (อาจจะดูงง ๆ ไม่เป็นหัวข้อเท่าไหร่นะครับ เพราะบางอันผมก็จดโน้ตทิปส์ที่เขาบอกมาระหว่างสอนอีกที)

[Android] Google I/O Extended Bangkok 2018

สวัสดีครับ…กลับมาพบกับโพสท์ที่มีสาระอีกแล้วนะครับ (โพสท์ที่ผ่านมา มันไม่มีสาระหรือยังไง) วันนี้ก็ขอมาพูดถึงสิ่งที่ได้เรียนรู้จากงาน Google I/O Extended Bangkok ที่จัดที่โรงละครเคแบงก์สยามพิฆเนศ เมื่อวันที่ 1 กรกฎาคม 2561 ครับ ไม่พูดมาก เริ่มเลยดีกว่า เจ็บคอ (ทำไมต้อง Aggressive เบอร์นี้)

[Android] Android Conference Bangkok 2018

นาน ๆ จะเขียนบล็อกเกี่ยวกับแอนดรอยด์บ้าง มาคราวนี้ก็ขอเขียนเกี่ยวกับงาน Android Conference Bangkok 2018 แล้วกันนะครับ สำหรับงานนี้ ตามชื่อเลย คืองานสัมมนาเกี่ยวกับ Android และเทคโนโลยีอื่น ๆ ที่เกี่ยวข้อง จริง ๆ ปีที่แล้วก็ไปงานนี้มาครับ แต่ไม่ได้เขียนบล็อก ตอนแรกก็ว่าจะเขียน แต่…นาน ๆ ไปแล้วลืม เลยไม่เขียนซะงั้น พอมาปีนี้ ตั้งใจแน่วแน่ว่าจะเขียน เลยโน้ตลงในนี้เลย จบงานปุ๊บ Publish ปั๊บ (แต่เอาจริง ไม่ได้จบปุ๊บ Publish ปั๊บ เพราะมันเละเกิน ขอเกลา + ใส่รูปสักนิดสักหน่อยก่อนละกัน)

[Android] วิธีเปิดรูปที่ต้องใช้ Cookies ในการเปิด

เนื่องจากมีโปรเจคท์นึง ที่ผมต้องเปิดรูปจากอินเตอร์เน็ตโดยใช้ Cookies เพื่อการเข้าถึงรูป เลยขอบันทึกไว้หน่อย เผื่อคราวหน้าจะต้องใช้อีก (อันนี้ทำแบบ Hard Code ค่า Cookies นะครับ ถ้าต้องการให้มันไปเอาค่ามาจากที่อื่น ก็ปรับโค้ดเอาเองนะครับ)

[Android] ดาวน์โหลดไฟล์ต่อจากที่เคยโหลดค้างไว้

เอามาจากนี่ http://stackoverflow.com/questions/6237079/resume-http-file-download-in-java HttpURLConnection connection = (HttpURLConnection) url.openConnection(); if(ISSUE_DOWNLOAD_STATUS.intValue()==ECMConstant.ECM_DOWNLOADING){ File file=new File(DESTINATION_PATH); if(file.exists()){ downloaded = (int) file.length(); connection.setRequestProperty(“Range”, “bytes=”+(file.length())+”-“); } }else{ connection.setRequestProperty(“Range”, “bytes=” + downloaded + “-“); } connection.setDoInput(true); connection.setDoOutput(true); progressBar.setMax(connection.getContentLength()); in = new BufferedInputStream(connection.getInputStream()); fos=(downloaded==0)? new FileOutputStream(DESTINATION_PATH): new FileOutputStream(DESTINATION_PATH,true); bout = new BufferedOutputStream(fos, 1024); byte[] data = new byte[1024]; int x = 0; while ((x …

[Android] หมุนรูปอัตโนมัติหลังถ่าย

ที่มาของ Entry นี้ คือ เขียนแอปให้มันถ่ายรูปด้วยแอปกล้องที่ติดมากับเครื่อง เมื่อถ่ายเสร็จแล้ว ภาพที่ได้มันหมุน 90 องศา จากที่หาข้อมูล ไป ๆ มา ๆ ก็เจอ http://stackoverflow.com/questions/13430895/capture-photo-rotate-90-degree-in-samsung-mobile เลยมาจด ๆ ไว้ เผื่อคราวหน้าต้องใช้งานอีก

[Android] TVIS 4.0 : TVIS เปลี๊ยนไป๋

จะเห็นได้ว่าบล็อกนี้จะมีการอัปเดทข่าวคราวของ Application บน Android ตัวหนึ่ง ที่มีชื่อว่า TVIS อยู่ตลอดเวลานะครับ โดยชื่อ TVIS นี้ ก็ย่อมาจาก Traffic Voic Information Service ซึ่งตอนนี้…ก็มาถึงเวอร์ชัน 4.0 แล้วนะครับ (ในบล็อกนี้ข้ามเวอร์ชัน 3.0 ไป สาเหตุ….ลืมเขียน = =) คร่าว ๆ สำหรับเวอร์ชัน 3.0 ก็คือ ได้มีการเพิ่ม รายงานสภาพน้ำฝน เข้ามา ส่วนรายละเอียด จะอธิบายทีหลังครับ สำหรับเวอร์ชัน 4.0 นี้ ก็ได้เปลี่ยนแปลงหน้าตาหน้าหลักไป กลายเป็น แบบนี้…

[Android] มาแสดงเส้น Route บน Mapview กันเถอะ

กลับมาเขียนบล็อกสักที หลังจากห่างหายไปนานแสนนาน ใจจริง ก็อยากมาอัปนะ แต่ไม่รู้จะอัปอะไร ล่าสุดต้องเขียน App ที่ต้องมีการแสดงเส้น Route บน Mapview ก็ลอง ๆ ไปหาข้อมูลมา เจอแบบที่ต้องไปเอาข้อมูลจาก Google Map มาแสดง แต่…ในโค้ดตัวอย่าง ดันเป็นการรับข้อมูลที่เป็น KML ซึ่งทาง Google Map เขาเลิกใช้ไปแล้ว… หาต่ออีกนิด ก็เลยเจอตัวอย่างล่าสุด…ที่ใช้งานได้จริง เลยอยากเอามาแบ่งปันกัน

[Android] TVIS 2.0 : การเติบโตครั้งใหม่ของระบบรายงานสภาพจราจรด้วยเสียง

หลังจากที่เคยเขียนถึง Android Application ตัวหนึ่งที่ชื่อ TVIS มาครั้งหนึ่งที่ [Android] App Review : ไม่อยากเจอรถติดทำไงดี (TVIS for Android) มาวันนี้ เจ้าหุ่นยนต์รายงานสภาพจราจรด้วยเสียง ได้กลายร่างใหม่ กลายเป็นเวอร์ชัน 2.0 เป็นที่เรียบร้อยแล้ว เพิ่งอัพเดทลง Play Market เมื่อวานนี้เอง (18 มิ.ย. 2555) มาดูกันว่า การอัพเดทครั้งนี้มีอะไรเปลี่ยนแปลงไปบ้าง