ช่วงนี้ใน Google Play Store เริ่มมี App Watch Face มาให้ดาวน์โหลดกันเยอะขึ้น มี Watch Face ใหม่ๆ แทบจะทุกสัปดาห์ มีทั้งแบบฟรีและเสียเงิน ก็เลยคิดว่าถ้าจะเขียน Watch Face ในแบบที่ต้องการบ้างจะทำอย่างไร ซึ่งเท่าที่ลองค้นหาข้อมูลก็พบว่า Watch Face เขียนคล้ายกับ Launcher บน Android คือเขียน Wear App ปกติแต่ไปกำหนดใน AndroidManifest ว่าให้ทำหน้าที่เป็นอะไร ซึ่งถือว่าง่ายมากๆ ลองมาทำเล่นกันครับ

สิ่งที่ต้องมี

  • Android Studio รุ่นล่าสุด
  • Android SDK Rev 20
  • Android Wear System Image


Continue reading

Android Wear เป็น Platform SmartWatch ที่เพิ่งเปิดตัวไปเมื่อไม่นานมานี้ จากงาน Google I/O 2014 ในเบื้องต้น Android Wear เน้นการเชื่อมต่อกับ Smartphone และ Tablet สามารถ Share Notification ได้อัตโนมัติ โดย Notification ที่แสดงผลบน Smartphone จะแสดงผลบน Smartwatch ด้วยเช่นกัน โดยแสดงผลเป็น card ในรูปแบบของ Context Stream การใช้ Notification ที่เชื่อมระหว่าง Smartphone และ Smartwatch สามารถช่วยสร้างประสบการณ์การใช้งานที่ดีให้กับผู้ใช้ได้ หากคุณเพิ่มฟังก์ชั่นการใช้งานเข้าไปให้กับ Notification ที่คุณสร้างด้วย

มาลองสร้าง Notification บน Android Wear กัน สำหรับท่านที่เคยเขียน Notification บน Android มาแล้ว อาจจะคุ้นเคยกับ Notification Builder สำหรับ Smartphone กันอยู่แล้ว แต่ถ้าคุณต้องการสร้าง Notification เพื่อให้แสดงผลทั้งบน Smartphone และ Smartwatch ด้วยจะต้องใช้ NotificationCompat Builder สำหรับการใช้งาน NotificationCompat คุณจะต้องเรียกใช้ library จาก Android Support Library มาทดลองเขียนกันครับ

ขั้นแรกสิ่งที่คุณต้องมี

  • Android Studio 0.8.x รุ่นล่าสุด
  • Android Wear System Image ใช้ Atom ได้จะเร็วมาก อย่าลืมติดตั้ง HAXM ด้วย
  • Android Support Library
  • Android Wear App ดาวน์โหลดได้ที่ Google Play Store


Continue reading

ผมยังรู้สึกตื่นเต้นกับ KitKat อยู่หลังจากตัดสินใจอัพเกรดจาก 4.3 Stock ROM มาเป็น Cyanogen Mod 11 ทำให้ได้เล่นและได้ลองอะไรใหม่ๆ เยอะ โดยเฉพาะคุณมบัติที่เพิ่งโผล่มา คือ Screen Record ครับ โดยปกตินักพัฒนาจะอาศัยโปรแกรม Screen Record จากภายนอกมาจับหน้าจอเพื่อทำ Video แต่ใน KitKat มีโปรแกรมจับหน้าจอใดตัว ซึ่งเรียกใช้ได้ 2 วิธี

วิธีแรกจาก adb นี่แหละครับ คือสั่ง adb shell ให้ไป run โปรแกรม screen record ในเครื่องให้จับหน้าจอให้แล้วบันทึกลงใน sdcard ดังนี้

adb shell screenrecord /sdcard/a.mp4

หากต้องการหยุด ก็กด Ctrl+C เท่านี้ก็ได้วิดีโอหน้าจอแล้ว จากนั้นก็คัดลอกไฟล์จากมือถือลงมาที่เครื่องดังนี้

adb pull /sdcard/a.mp4

วิธีที่ 2 ใช้ Android Studio ที่เป็นเครื่องมือของนักพัฒนานี่แหละครับ เปิดไปที่ Android DDMS จากนั้นหาปุ่มเขียวๆ กดลงไปเลยครับ

จากนั้นจะมีหน้าจอให้ตั้งค่า config เพิ่มเติมถ้าคิดไม่ออกก็กด Start Recording ไปได้เลย

เมื่อกด Start Recording แล้วหน้าจอจะแสดง progress bar พร้อมปุ่ม Stop หากต้องการหยุดบันทึกก็กดปุ่ม Stop ได้เลย

พอกด Stop โปรแกรมก็จะถามว่าจะบันทึกไฟล์ไว้ที่ไหนดังนี้

เลือกไดเรคทอรีที่ต้องการ :)

กูเกิลเผยสถิติเวอร์ชันแอนดรอยด์รอบใหม่ (นับถึง 1 พฤศจิกายน) ล่าสุด Jelly Bean ทุกเวอร์ชันรวมกันมีส่วนแบ่งตลาดเกินครึ่งของแอนดรอยด์ทั้งหมดแล้ว

  • Jelly Bean 52.1%
  • Ice Cream Sandwich 19.8%
  • Honeycomb 0.1%
  • Gingerbread 26.3%
  • Froyo 1.7%

แต่ถ้าแตกเวอร์ชันย่อยของ Jelly Bean จะแบ่งได้เป็น 4.1 37.3%, 4.2 12.5%, 4.3 2.3%

ที่มา – Blognone

ผมใช้มือถือ Nexus มาระยะหนึ่ง แต่ก็ยังไม่สามารถรับ-ส่ง ไฟล์ผ่านสาย USB ได้ เนื่องจาก Android 4.x ใน Nexus ใช้การเชื่อมต่อผ่านโปรโตคอล MTP และ PTP เท่านั้น ทำให้การใช้งานเครื่อง Nexus ของผมต้องผ่าน ddms หรือไม่ก็ Airdroid สำหรับท่านที่ใช้ระบบปฏิบัติการ Windows อาจไม่ส่งผลกระทบเท่าไร แต่ท่านที่ใช้ Ubuntu ก็คงต้องมาหาทางแก้ไขกัน ใน Ubuntu มีเครื่องมือหลายอย่างในการรับส่งไฟล์ผ่าน MTP เช่น Go-Mtpfs, Gvfs เป็นต้น แต่ทั้งหมดก็สร้างปัญหา หรือที่เรียกว่าใช้งานไม่ได้มาเกือบ 1 ปี แต่ Gvfs และ libmtp ก็ทะยอยแก้ปัญหามาเรื่อยๆ สำหรับท่านที่อยากลอง สามารถติดตั้งเพื่อทดสอบกันได้ จาก PPA ของนักพัฒนา ดังนี้

เพิ่ม PPA ของ Gvfs

sudo add-apt-repository ppa:langdalepl/gvfs-mtp

sudo apt-get update

จากนั้นสั่ง Upgrade

sudo apt-get upgrade

จากนั้น reboot เครื่อง แล้วลองเสียบเครื่อง Nexus ของคุณดูครับ จะพบว่า Ubuntu จะ Mount MTP Device ขึ้นมาให้พร้อมใช้งาน ;)

เนื่องจากรอ OTA ไม่ไหวก็เลยอัพเกรดด้วยตัวเอง เครื่องมือที่ต้องมีได้แก่

  1. Android SDK
  2. สาย USB
  3. Image ที่ตรงกับเครื่องของคุณ ของผมเป็น Yukju

วิธีการง่ายๆ มีดังนี้

  1. ตั้งค่า USB Debuging Mode ก่อน ถ้าหาเมนู Developer Options ไม่เจอ ให้ไปกดที่ Build Number ในหน้า About Phone 8 ครั้ง เดี๋ยวเมนูมันจะโผล่อออกมา
  2. ใช้คำสั่ง adb reboot bootloader โทรศัพท์จะ reboot แล้วแสดงหน้าจอมี Android นอนหงายท้องอยู่
  3. ใช้คำสั่ง fastboot oem unlock (ถ้าเป็น Linux ต้องใช้สิทธิ์ root ในการใช้สำสั่งนี้) หน้าจอจะขึ้นมาถามว่าต้องการ unlock bootloader หรือไม่ ตอบ Yes เลยคับ
  4. แตกไฟล์ที่ดาวน์โหลดมา แล้ว run script ชื่อ flash-all.sh แล้วนั่งรอ :) เท่านี้ก็ได้ Jelly Bean 4.3 แล้ว
  5. ใช้คำสั่ง adb reboot bootloader จากนั้นสั่ง lock bootloader โดยใช้คำสั่ง fastboot oem lock

งาน Google I/O 2013 ที่ผ่านมาก็เป็นที่รู้กันอยู่แล้วว่ามีเครื่องมือในการพัฒนา Android App มาใหม่ ชื่อ Android Studio เจ้า Adnroid Studio นี้มีข่าวลือมานานแล้ว ว่า Google จะออกเครื่องมือลักษณะนี้ขึ้นมา เริ่มตั้งแต่การเอา Eclipse มารวมร่างกับ ADT เป็นชุดเดียวกัน ตั้งชื่อเป็น ADT Bundle เหมาะสำหรับนักพัฒนาที่ไม่ต้องการวุ่นวายกับ Eclipse มากนัก เอาเป็นว่า ADT Bundle ไม่ใช่ Android Studio แล้ว Android Studio เป็นอย่างไร

Android Studio พัฒนาต่อยอดมาจาก IntelliJ คนเขียนภาษา Java อาจจะชื่นชอบกันมาก เพราะ IDE ตัวนี้เหมาะมากสำหรับคนที่ชอบใช้ shotcut key และการพิมพ์ หน้าตา Android Studio ก็เป็นอย่างนี้ครับ เหมือน IntelliJ เดะๆ

การใช้งานก็เหมือนกัน เพื่อไม่ให้เป็นการสับสนทาง IDE ก็ขอทำรายการ Shotcut ไว้สักหน่อย

  • Alt+1 = เปิด/ปิด Project Explorer
  • Alt+7 = เปิด/ปิด Structure Explorer
  • Alt+2 = เปิด/ปิด Favorites
  • Alt+6 = เปิด/ปิด Android DDMS
  • Alt+left arrow, Alt+right arrow = เลือก Tab ซอร์สโค้ดที่เปิดอยู่
  • Ctrl+N = สร้างไฟล์ใหม่
  • Ctrl+Y = ลบบรรทัด
  • F4 = เปิดซอร์สโค้ด
  • Ctrl+Alt+Shift+N = ค้นหาตาม symbol
  • Ctrl+P = แสดง parameter ของ method ที่เลือกอยู่
  • Ctrl+Q = แสดง Doc ของ API ที่เลือกอยู่
  • Ctrl+Alt+L = จัดรูปแบบโค้ด
  • Alt+Enter = Project Quick Fix
  • Ctrl+Shift+A = ค้นหาคำสั่ง
  • Ctrl+F9 = Build
  • Ctrl+F10 = Build and run

งาน Google I/O 2013 มีงานสัมนาย่อยๆ หยังจาก Keynote จบแล้ว ซึ่งส่วนใหญ่จะเกี่ยวข้องกับผลิตภัณฑ์ใน Keynote นั่นเอง สัมนาย่อยจะแบ่งออกเป็น 3 ส่วน ได้แก่
* สัมนาเนื้อหาเจาะลึก APIs, Feature ใหม่ๆ
* Fireside ถือถามตอบกับทีมที่ดูแลผลิตภัณฑ์นั้นๆ โดยตรง
* Code Lab คือลง Lab ทดลองกับของจริง
ก็เป็นธรรมเนียมหลังจบงาน ก็มีวิดีโอรวม Session ต่างๆ เอาไว้ให้ดูย้อนหลังได้ ใครพลาดงานนี้ก็ดูจากวิดีโอได้ครับ :)

เก็บตก Google I/O 2013 ฝั่ง Android งาน Google I/O 2013 เลิกมาหลายอาทิตย์แล้วเพิ่งจะได้มา blog ไว้ว่าจะต้องเรียนอยู่อะไรใหม่ๆ บ้าง ปีนี้ Google I/O 2013 เน้นกลุ่มนักพัฒนาเป็นหลัก โดยเน้นการนำเสนอเครื่องมือและ APIs ใหม่ๆ ในการพัฒนาซอฟต์แวร์ ผมขอสรุปเฉพาะในส่วนของ Android นะครับ สำหรับ Keynote ของงานดูได้จาก Video ข้างล่าง

  • มีผู้ใช้ Android กว่า 900 ล้านคน
  • Google Play Service มี APIs ให้เล่นเพิ่มเติมได้แก่
    • Google Map Android APIs v2
    • Location APIs
    • Google+ Sign-In
    • Google Cloud Messaging ส่ง message ไปได้ทั้ง 2 ทาง คือไปที่อุปกรณ์และไปที่ Server ของนักพัฒนา พร้อมแจ้งเตือนผ่าน Notification
  • Google Play game services เป็นบริการที่รองรับสำหรับนักพัฒนาเกมส์ สามารถบันทึกคะแนนบน Cloud เก็บ Archivement, Leaderboard และรองรับ Multiplayer ที่เชื่อมต่อกับ Google+ ได้
  • เครื่องมือพัฒนาตัวใหม่ Android Studio พัฒนาต่อจาก IntelliJ Community Version ยังเป็น Developer Preview เปิดให้เล่นแล้ว
  • Google Play Developer Console
    • มี Optimization Tips สำหรับนักพัฒนา ให้คำแนะนำโดยอ้างอิงจากกลุ่มผู้ใช้
    • มีบริการ App Translation Service ให้บริษัทรับแปลภาษาเป็นคนแปลให้
    • มี Referal Tracking, Usage Metrics สำหรับ Analytics API จะเอารายงานมารวมอยู่ใน Google Play ด้วย
    • Revenue กราฟแบบใหม่กรองได้ตามประเทศและช่วงเวลา
    • Beta Testing & Stage Rollouts ทำ Beta Testing ได้โดยให้สิทธิ์ในคนใน Circle ให้กลุ่มทดสอบ

      ใน Keynote ยังมีเนื้อหาอีกเยอะใครพลาด Google I/O ก็ดูวิดีโอข้างล่างครับ

GDG Thailand และ MT2 ขอเชิญชวนนักพัฒนาแอพพลิเคชั่นแอนดรอยพบกับ Android Developer Day งานสัมมนา 1 วันเต็มที่เจาะลึกเนื้อหาแอนดรอยแบบเข้มข้นอัพเดตล่าสุดจากงาน Google I/O และไปทำความรู้จักกับสถาปัตยกรรมอินเทลบนแพลตฟอร์มแอนดรอยที่เป็นความท้าทายใหม่ของนักพัฒนาไทย พร้อมด้วยกลุ่มคอมมิวนิตี้ Ingress ชาวไทย ที่จะมาเล่าประสบการณ์และแนะนำกิจกรรมให้กับผู้เล่นทั้งเก่าและใหม่ได้สนุกกัน สมาชิก GDG Thailand สามารถลงทะเบียนเข้าร่วมกิจกรรมได้แล้ววันนี้และพบกันในวันที่ 1 มิถุนายน ที่ห้อง Auditorium ซอฟต์แวร์พาร์ค

กำหนดการ

9.00 ลงทะเบียน
9.30 พิธีเปิด
10.00 รู้จักกับสถาปัตยกรรมของอินเทล Android x86 ความท้าทายใหม่ของนักพัฒนาแอนดรอย, มร. แจ๊กกี้ ลี – Intel Corporation
11.50 เชิญรับประทานอาหาร
12.45 ทำความรู้จักกับเครื่องมือใหม่คู่ใจนักพัฒนา Android Studio
13.00 ช่องทางทำรายได้จาก Google Admob โฉมใหม่
14.30 ปัจจุบันและอนาคตของ Android หลังงาน Google I/O 2013
15.15 พูดคุยกับกลุ่มผู้เล่นเกมทั้งสองฝ่ายใน Ingress Talk
16.00 พิธีปิด

ลงทะเบียน : http://goo.gl/q9fil
Google+ Event : http://goo.gl/En7We

ที่มา – http://www.gdg.in.th/2013/android-developer-day/