มาเขียน Mobile HTML5 App กัน ตอน แสดงผลหน้าจอหลายขนาด

ผมมักจะเขียน HTML5 App แล้วทดสอบบน Tablet ซึ่งมีขนาดหน้าจอใหญ่โต 1280x720px ซึ่งมีพื้นที่เหลือเฟือในการแสดงผล แต่ถ้าหน้าจอเล็กๆ อย่าง 320px, 480px, 640px ล่ะจะทำอย่างไร? ซึ่งแน่นอนว่าการแสดงผล อย่างเช่น ภาพ ขนาดตัวอักษร ฯลฯ จะไม่เหมาะสม ตัวอย่างเช่น

จากภาพจะเห็นว่าเราอ่านการ์ตูน I am Petdo! ได้แค่ครึ่งเดียว ทีนี้ทำยังไงดี วิธีง่ายๆ คือการใช้ความสามารถของ CSS3 ครับ ใน CSS3 จะมีคำสั่งพิเศษชื่อว่า media ซึ่งคำสั่งนี้ใช้เพื่อกำหนดความเหมาะสมของ CSS ในแต่เหตุการณ์ เช่น หน้าจอมีขนาดเล็กบ้าง ใหญ่บ้าง เป็นต้น ทีนี้เราก็มากำหนด CSS ให้ I am Petdo! กันใหม่ เพิ่มคำสั่ง media เข้าไปดังนี้
@media screen and (min-width: 320px) {
img.imagefield {
width:280px;
height:auto;
}
}

@media screen and (min-width: 480px) {
img.imagefield {
width:400px;
height:auto;
}
}

@media screen and (min-width: 800px) {
img.imagefield {
width:563px;
height:auto;
}
}
จากโค้ดข้างต้น หากหน้าจอมีขนาดเล็ก 320px ให้ ภาพที่ใช้ class imagefield มีขนาดความกว้าง 280px ตามลำดับ เท่านี้คุณก็จะได้หน้าจอการแสดงผลที่ดูดีขึ้น ดังนี้


ลองเอาไปประยุกต์ใช้กันดูได้ครับ อ้อและอีกอย่างนึง อย่าลืมกด Like ให้ ThaiOpenSource นะครับ

มาเขียน Mobile HTML5 App กัน ตอน หน้าจอหลายขนาดทดสอบยังไง

นักพัฒนา Mobile Web หลายท่านมักจะมีเครื่องไม้เครื่องมืออย่าง Emulator, มือถือ, tablet หลากหลายขนาดเพื่อใช้ทดสอบว่า Mobile Web หรือ HTML5 App ที่พัฒนาขึ้นมานั้นแสดงผลในหน้าจอขนาดต่างๆ เป็นอย่างไร จะต้องแก้ไขหรือปรับปรุงในส่วนใดบ้างเพื่อให้การแสดงผลถูกต้องและลงตัวมาก ที่สุด ครั้งนี้จะมาแนะนำ Emulator บน Browser เพื่อที่จะช่วยทดสอบ HTML5 App ได้ง่ายมากขึ้น เครื่องมือนี้ชื่อ Ripple แห่งค่ายฮิปโปจิ๋ว (tinyhippos)

ripple จะเปลี่ยน Browser ของคุณให้กลายเป็น Mobile/Tablet Emulator พร้อมฟังก์ชั่นที่เชื่อมต่อกับ JavaScript Framwork ต่างๆ ไม่ว่าจะเป็น PhoneGap, WebWork, WebWork TabletOS, Mobile Web เป็นต้น คุณสามารถทดสอบ App ที่ใช้การเชื่อมต่อ Internet, GPS, Accelerometer ได้ง่ายๆ

สำหรับท่านที่สนใจก็ลองทดสอบดูได้ที่ http://ripple.tinyhippos.com ครับ

มาเขียน HTML5 App แบบ คลิ๊ก คลิ๊ก คลิ๊ก

ผมพอจะเข้าใจได้เลยว่าการเขียน HTML5 Application เป็นแนวทางอีกแนวทางหนึ่งในการเขียน Application บน Mobile ซึ่งต้องขอบคุณ Apple เพราะกระแสความก้าวล้ำทางด้านเทคโนโลยีของ Webkit ทำให้เกิดแรงผลักดันมาตรฐานที่ควรจะมีให้เกิดขึ้นอย่างรวดเร็ว ทั้ง JavaScript Engine, Local Storage, Local Database และอื่นๆ และอุปกรณ์อย่าง iPhone, iPad ก็รองรับ Mobile (Web) Application ได้อย่างลงตัว โดยการสร้าง Wedget ลงในอุปกรณ์ให้สามารถเรียกใช้ได้เหมือนกับ Application ตัวหนึ่งในเครื่อง จากการพัฒนาดังกล่าวจึงเกิดบริการใหม่ เพื่อช่วยให้นักพัฒนาซอฟต์แวร์และเจ้าของบริการสามารถสร้าง HTML5 App ได้อย่างง่ายๆ เรียกว่า อยากได้อะไร คลิ๊กเอาได้เลย ในครั้งนี้จะมาแนะนำ บริการ SaaS เพื่อช่วยสร้าง HTML5 App กัน 2 ตัวดังนี้
Widget Box
ตัวอย่างการใช้งาน Widget Box Mobile App สร้าง App การ์ตูน IamPetdo จาก RSS Feed

กำหนด Feed URL

กด Save เราก็ได้ HTML5 App มา 1 ตัวใน 3 ขั้นตอน

HTML5 App ที่สร้างขึ้นมาจะอยู่กับ Widget Box หากต้องการติดตั้งลงในอุปกรณ์ต่างๆ เช่น iPhone. iPad, มือถือ Android หรือ Tablet Android ต้องสมัครสมาชิกซึ่งมีค่าใช้จ่ายอยู่นิดหน่อย สำหรับท่านที่สนใจก็ลองไปใช้งานกันดูได้ที่ http://www.widgetbox.com
Tiggzi
Tiggzi (บริการเดิมชื่อ Tiggr) เป็นบริการสำหรับสร้าง Mobile Web และ Mobile App ที่น่าสนใจอีกตัวหนึ่ง ซึ่งตัวระบบให้คุณสามารถวาง Widget เพื่อกำหนดรูปแบบและหน้าตาของ Mobile App ของคุณได้ อีกทั้งยังสนับสนุนการเขียนโค้ดเพื่อควบคุม Widget เหล่านั้นได้อีกด้วย จะคล้ายกับการเขียนโปรแกรมจากเครื่องมือบนระบบปฏิบัติการทั่วไป แต่ตากกันตรงที่เราเขียนและพัฒนาบนเว็บแทน สำหรับ App ที่ได้สามารถใช้งานได้กับ iPhone, Android ได้เลย สำหรับท่านที่สนใจก็ลองทดสอบได้ที่ http://tiggzi.com ครับ

มาเขียน Mobile HTML5 App กัน ตอน การ์ตูนสุดสนุกแห่งยุค

ผมคลั่งการ์ตูนออนไลน์เรื่องหนึ่งมาก ถ้าคุณมีพฤติกรรมที่ออกจะดูแย่ๆ จนคนรอบข้างรับไม่ได้ คุณจะถูกขนานนามว่าเป็น “Petdo!” ใช่ครับ การ์ตูน I am Petdo! เป็นการ์ตูนสร้างสรรค์มากในยุคนี้ หากใครไม่ได้อ่านเชยมากๆ ครับ ในครั้งนี้ผมจะมายกตัวอย่างการเขียน HTML5 + jQuery + jQuery Mobile + YQL กัน เว็บไซต์การ์ตูน I am Petdo! มีช่องทางให้คุณอ่านการ์ตูนผ่านทาง RSS Feed ได้ ซึ่งคุณสามารถใช้ RSS reader ตัวไหนก็ได้ในการอ่านการ์ตูนเรื่องนี้ โดยไม่ต้องเข้าเว็บและเราก็สามารถเขียน HTML5 App ในการ Feed เนื้อหาจาก RSS ได้เช่นกัน เครื่องมือที่จะมาแนะนำเพิ่มเติมวันนี้คือ YQL
YQL หรือ Yahoo! Query Language เป็นเครื่องมือคล้ายกับคำสั่ง SQL ใช้ในการ query, filter, join ข้อมูลข้ามเว็บเซอร์วิส คุณสามารถใช้ YQL ในการสร้างชุดข้อมูลที่คุณต้องการได้ง่ายเลยทีเดียว

จากภาพจะเห็นได้ว่าเราสามารถใช้คำสั่ง SQL เพื่อ filter ข้อมูลจาก RSS Feed ได้ YQL มีคุณสมบัติอีกอย่างคือสามารถ แสดงผลลัพท์ในรูปแบบ XML หรือ JSON ได้ ในที่นี้เราจะใช้ผมลัพท์จาก JSON ส่งต่อให้ jQuery ประมวลผล คุณสามารถใช้ Query URL เอาไปใช้งานได้เลย ตัวอย่างเช่น
http://query.yahooapis.com/v1/public/yql?q=select%20title%20from%20rss%20where%20url%3D%22http%3A%2F%2Frss.news.yahoo.com%2Frss%2Ftopstories%22&format=json&diagnostics=true&callback=cbfunc
ผลลัพทที่ได้จะเป็นข้อมูลในรูปแบบ JSON เมื่อได้ข้อมูลมาแล้วก็เขียน jQuery ผ่านทาง jsfiddle เช่นเคย ปรับแต่ง CSS ตามใจชอบ

ตอนนี้เราก็ได้ jQuery ในส่วนที่จำนำไปใช้งานกันแล้ว จับใส่ jQuery Mobile อีกนิดหน่อยเราก็จะได้ HTML5 App สำหรับ Mobile กันแล้ว

มาเขียน Mobile HTML5 App กัน ตอน ภาพสวยใน Flickr

บริการคลังเก็บภาพถ่ายอย่าง Flickr มีช่องทางสำหรับนักพัฒนา App สามารถที่จะเรียกใช้งานได้ซึ่งมีมาตั้งนานแล้ว ผ่านทาง Flickr API ซึ่งแน่นอนว่าสามารถอัพโหลดภาพผ่านทาง API ได้ และดึงข้อมูลภาพเอามาแสดงผลได้เช่นกัน วิธีการก็ง่ายมากครับ

  1. ต้องสมัคร Flickr API กันก่อน
  2. เลือกช่างกล้องที่เราชื่นชอบ ผมชอบงานถ่ายภาพของนักพัฒนาซอฟต์แวร์ท่านหนึ่ง คือ คุณFordAntiTrust ครับ
  3. ดู Flickr API ที่เราสามารถเลือกใช้ได้ http://www.flickr.com/services/api

มีแค่นี้ครับ ผมเลือกใช้ Method ที่ชื่อว่า flickr.photosets.getPhotosค่าตัวแปรที่ต้องใช้งานกับ Method นี้คือ API_KEY และ PhotoSet ID ให้เราลองสร้าง REST Request เพื่อให้ได้ข้อมูลเล่นๆ บน Browser กันก่อน ดังนี้

http://api.flickr.com/services/rest/?&method=flickr.photosets.getPhotos&api_key=YOUR-KEY&photoset_id=YOUR-PHOTOSET-ID&format=json&jsoncallback=?

เปลี่ยนค่าตามค่าที่คุณต้องการ ก็จะได้ค่า JSON กลับมาแบบงงๆ อย่างนี้

jsonFlickrApi({"photoset":{"id":"72157626549802465", "primary":"5523106788", "owner":"14143570@N00", "ownername":"Ford AntiTrust",
"photo":[{"id":"5523106788", "secret":"ff8af2e14e", "server":"5057", "farm":6, "title":"dear - cu-cheer-66 (2)", "isprimary":"1"},
{"id":"5522518723", "secret":"b006460b92", "server":"5292", "farm":6, "title":"dear - cu-cheer-66 (6)", "isprimary":"0"},
{"id":"5522517811", "secret":"a3e3900d7f", "server":"5252", "farm":6, "title":"dear - cu-cheer-66 (4)", "isprimary":"0"},
{"id":"5522518261", "secret":"e4c4373a3f", "server":"5219", "farm":6, "title":"dear - cu-cheer-66 (5)", "isprimary":"0"},
"page":1, "per_page":500, "perpage":500, "pages":1, "total":"29"}, "stat":"ok"})

เรียกได้ว่าสุดมึน คำถามคือ “ภาพอยู่แห่งหนใด” แล้วจะเอามันออกมาโชว์ได้ยังไง? ต่อให้ Parse JSON ได้แลัวภาพอยู่ไหนอ้ะ T_T วิธีการแปลข้อมูลอยู่ที่ Flickr Photo Source URLs ซึ่งข้อมูลจะใช้ REST เช่นเคย ในการแสดงข้อมูลภาพ งงไหม REST ซ้อน REST ไม่ต้องสนใจก็ได้ครับ มันเป็นเรื่องของโครงสร้างการจัดการข้อมูล เอาเป็นว่าโครงสร้าง URL ที่เราจะใช้กันมีดังนี้

http://farm{farm-id}.staticflickr.com/{server-id}/{id}_{secret}_[mstzb].jpg

ค่าที่เราจะเอามาใช้จาก JSON ข้าต้นได้แก่ farm-id, server-id, id, secret และ option ภาพที่เราต้องการ แบ่งเป็น

  • s ภาพขนาด 75×75
  • t ภาพ thumbnail 100px
  • m ภาพขนาด 240px
  • z ภาพขนาดกลาง 640px
  • b ภาพขนาดใหญ่ 1024px
  • o ภาพต้นฉบับ

จากตัวอย่าง JSON ข้างต้น เราลองมาหาภาพแต่ละขนาดกันครับ
แทนค่าสมการกันดีกว่า http://farm6.staticflickr.com/5057/5523106788_ff8af2e14e_z.jpg เราจะได้ภาพดังนี้



เอาล่ะเริ่มมีกำลังใจกันแล้วใช่มั๊ยครับ เราก็ใช้ http://jsfiddle.net ในการเขียนโค้ดและทดสอบโค้ดกัน

เมื่อได้ทดสอบ jQuery Code และ CSS กันอย่างพอใจแล้ว ก็มาประกอบร่างกันใน jQuery Mobile แล้วไป Build ต่อโดยใช้ PhoneGap Build เราก็จะได้ HTML5 App สำหรับ Mobile ในค่ายต่างๆ ได้แล้วครับ ตัวอย่างพอหอมปากหอมคอ

คิดว่าน่าจะเป็นแนวทางในการพัฒนา HTML5 App ผนวกกับ APIs ของบริการต่างๆ บน Cloud ได้ครับ ตัวอย่างในครั้งต่อไปยังนึกไม่ออกครับ คิดว่าคงมีโอกาสมาเขียนอีกครับ 🙂

เครื่องมือเขียน HTML5 Apps แบบยาจก

ผมมักจะชินกับการใช้เครื่องไม้เครื่องมือที่ออกจะดูวิเศษเสมอๆ อย่าง Adobe Dreamweaver, Web Matrix แต่เมื่อไม่มีตังค์ซื้อก็เลยต้องประยุกต์บริการต่างๆ เข้ามาเพื่อให้การเขียน App ทำได้ง่าย สะดวก และรวดเร็ว คิดว่าหลายๆ ท่านคงเคยใช้ Notepad ในการเขียน HTML ใช่มั๊ยครับ แน่นอนมันยากและมึนด้วย วันนี้เลยจะมาแนะนำเครื่องมือในการเขียน HTML5 App สำหรับ Desktop, Mobile, Tablet App กันครับ เครื่องมือที่ผมใช้แบ่งออกเป็นกลุ่มดังนี้
เครื่องมือเกี่ยวข้องกับ Editor

  • gEdit เครื่องมือปกติที่ผู้ใช้ Ubuntu หรือ Gnome Based Distribution ใช้กันอยู่แล้ว ข้อดีของ Gnome คือมันมีสีแยกแยะ Syntax ทั้ง HTML, Javascript และ CSS ทำให้เห็นข้อผิดพลาดของโค้ดจากสีที่แสดงผลได้ง่าย
  • Eclipse สำหรับตัวนี้ผมมักจะใช้เขียน Android App มากกว่าที่จะเขียน HTML5 App แต่ก็สามารถใช้งานได้เป็นอย่างดี เพราะ plugin ที่เราสามารถติดตั้งเพิ่มเติมเองได้ ก็ทำให้คุณสมบัติของ Eclipse เพิ่มมากขึ้นด้วย

เครื่องมือทดสอบ/ทดลองโค้ด

  • JSONLint เป็นเครื่องมือตรวจสอบความถูกต้องของ Syntax แบบ JSON ข้อดีนอกจากการ Validate แล้วยังมีในเรื่องของการจัดรูปแบบของข้อมูลทำให้เราเข้าใจได้ง่ายมากขึ้น ด้วย
  • JSFiddle เป็นเครื่องมือสารพัดประโยชน์ที่รวมรวมเอาการเขียนโค้ดทั้งในรูปแบบของ HTML, CSS, Javascript พร้อมการแสดงผลลัพท์ให้ดู ที่สำคัญยังสามารถเรียกใช้ Javascript Framwork ดังๆ อย่าง jQuery, Mootools, Prototype, YUI เป็นต้น

เครื่องมือคิวรีและดัดแปลงข้อมูล

  • YQL หรือ Yahoo! Query Language สามารถทำให้เราสามารถใช้คำสั่ง SQL ง่ายๆ อย่าง SELECT ในการจัดการข้อมูลบน Internet ได้ง่ายๆ จากหลากหลายบริการ เช่น Yahoo answer, AppDB, Flickr, RSS เป็นต้น โดยคุณสามารถกำหนดข้อมูล output ที่ต้องการได้ด้วย ซึ่งมีให้เลือก 2 รูปแบบคือ XML และ JSON
  • Pipes เป็นเครื่องมือดัดแปลงข้อมูลจาก Internet เพื่อให้ได้ข้อมูลที่เราต้องการ Pipes เป็นอะไรที่สนุกมาก คุณสามารถเชื่อมโยงข้อมูลจากบริการที่แตกต่างเพื่อสร้างชุดข้อมูลใหม่ได้ เช่น เอา Youtube มาผนวกกับ Twitter เป็นต้น

เครื่องมือที่เกี่ยวกับ JavaScript Framework

  • jQuery Mobile ใช้สำหรับทำ Mobile Web หน้าตาจะออกแนวๆ iPhone App ใช้งานง่าย มีเครื่องมือที่เหมาะสำหรับการเขียน Mobile App เช่น Touch UI เป็นต้น
  • PhoneGap เป็น JavaScipt + SDK ทำให้เราสามารถใช้งานอุปกรณ์ที่อยู่ในมือถือหรือ tablet ได้ง่ายๆ ผ่านทาง JavaScript เช่น กล้องถ่ายรูป, GPS, โทรศัพท์ ฯลฯ PhoneGap ยังมี Build Server สำหรับสร้าง App เพื่อใช้งานในมือถือค่ายต่างๆ ได้อีกด้วย จำได้ว่าเคยเขียน blog เกี่ยวกับ PhoneGap Builder ไปแล้ว
  • Sencha เป็นเครื่องมือ Javascript Framework อีกตัวหนึ่งที่น่าสนใจ แถมยังมีเครื่องไม้เครื่องมืออีกหลายอย่างให้ได้เล่นกัน

พอแค่นี้ก่อนก็แล้วกันครับ 🙂

สร้าง HTML5 Apps สำหรับมือถือทุกค่ายด้วย PhoneGap

PhoneGap เป็นแพลตฟอร์มการเขียน Application โดยใช้ HTML5 และ Javascript ซึ่งคุณสามารถใช้ในการสร้าง Application บนมือถือได้หลากหลายแพลตฟอร์ม เช่น iPhone, Android, BlackBerry, webOS, Windows Mobile และ Symbian เป็นต้น PhoneGap จะมาพร้อมกับ PhoneGap API เพื่อใช้ในการเขียน App และ Plugin ต่างๆ ซึ่งทำให้คุณสามารถสร้าง HTML5 Application ได้ง่ายๆ และที่สำคัญหากคุณเขียน Application เป็น HTML5 + PhoneGap API อยู่แล้ว คุณสามารถใช้ PhoneGap Builder ช่วยสร้าง App สำหรับแพลตฟอร์มอื่นๆ ได้เลย โดยไม่ต้องแก้ไขซอร์สโค้ดแต่อย่างใด





สำหรับท่านที่อยากทดลอง ก็สามารถเข้าไปดาวน์โหลด PhoneGap ได้ที่ http://www.phonegap.com สำหรับ PhoneGap Builder สามารถใช้งานได้ที่ https://build.phonegap.com

Redirect เว็บไซต์สำหรับมือถือด้วย Apache mod_rewrite

ทุกวันนี้หลายเว็บคงจะมีเว็บสำหรับ Mobile เพื่อรองรับการเข้าชมของอุปกรณ์ประเภท Smart Phone และ Tablet ซึ่งหากท่านใช้ CMS ที่สามารถแปลงเว็บไซต์จากหน้าเว็บแบบเข้าชมจากเครื่อง PC ไปเป็น Mobile ได้ก็คงไม่เป็นปัญหาอะไรมากนัก แต่ถ้าไม่มีก็คงต้องหาวิธีเขียนโปรแกรมเพื่อตรวจสอบเว็บเบราเซอร์กันเอาเอง วันนี้ผมมีวิธีง่ายๆ ในการ Redirect เว็บไซต์ ให้ถูกต้องตามอุปกรณ์ที่เรียกใช้กันครับ วิธีง่ายๆ ที่ว่าก็คือการใช้ mod_rewrite นี่แหละครับ
มาทำความเข้าใจกันก่อน สมมุติว่าคุณมีเว็บไซต์ที่ให้บริการผู้เข้าชม 2 แบบ คือแบบปกติเข้าชมผ่านเครื่องคอมพิวเตอร์ และแบบ Mobile เข้าชมผ่าน Smart Phone/Tablet มีโดเมนดังต่อไปนี้

  • เว็บปกติ http://www.my-example.com
  • เว็บสำหรับ Mobile http://m.my-example.com

หากผู้เข้าชมเปิดด้วยเครื่องคอมพิวเตอร์ปกติให้ Apache redirect ไปยังเว็บปกติ หากเป็น Smart Phone ก็ redirect ไปยังหน้าเว็บสำหรับ Mobile เงือนไขมีประมาณนี้ครับ มาลงมือกันเลย
เริ่มจากหน้าเว็บปกติคือ www.my-example.com ให้เพิ่ม .htaccess ใน document root ของ virtual host นี้เพื่อสั่ง redirect หากเข้าชมผ่าน Mobile ให้ redirect ไปที่ m.my-example.com เขียน rewrite rules ได้ดังนี้

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos" [NC]
RewriteRule ^$ http://m.my-example.com/ [L,R=302]
</IfModule>

ในหน้าเว็บ Mobile คือ m.my-example.com ให้เพิ่ม .htaccess ใน document root ของ virtual host นี้เพื่อสั่ง redirect หากเข้าชมผ่านคอมพิวเตอร์ ให้ redirect ไปที่ www.my-example.com เขียน rewrite rules ได้ดังนี้

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} "!(android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos)" [NC]
RewriteRule ^$ http://www.my-example.com/ [L,R=302]
</IfModule>

เท่านี้ก็เรียบร้อยแล้ว 🙂

มาใช้ Thai Open Source App กัน

สืบเนื่องจากเรียนเขียนโปรแกรมบน Android ไม่จบคอร์ส เพราะตื่นสาย (เรียนตอนตี 3 กว่าๆ) เลยทำให้เรียนไม่ทันเพื่อนๆ ในชั้นเรียน ก็เลยคิดว่าหลังจากที่ได้เรียน 2 บทแรกก็คิดว่าน่าจะเขียน App บน Android แบบเบื้องต้นได้แล้วล่ะน่า อย่างเช่น HelloWorld 😛 อะไรทำนองนี้ แต่เราเป็นศิษย์มีครูอยู่ต่างประเทศ เราจะเขียน Hello World เป็นอย่างเดียวได้อย่างไร ก็เลยเขียน Mobile App ขึ้นมาเล่นๆ ตัวนึงแบบง่ายนะไม่ซับซ้อน…คือเรียนไม่จบคอร์ส จะเอาอะไรยากนักหนา โปรแกรมนี้ชื่อ Thai Open Source App เจ้าตัวนี้เป็นลูกครึ่งระหว่าง Web Application + Web Service + Android App จะอธิบายง่ายๆ ก็คือ มันเป็น App เอาไว้เข้าหน้าเว็บ Thai Open Source แบบ Mobile คือเนื้อหาจะไม่ครบตามเว็บ เนื่องจากมันเป็น Mobile ใช่ป่ะ มันก็เลยมาเท่าที่ XML Feed จะให้ได้ (แก้ตัวน้ำขุ่นๆ อ่ะนะ) อ่ะ เอาจริงๆ ละ ก็อย่างที่บอกครับ โปรแกรมมี 3 ส่วน

  1. Web Service ที่บอกว่าเป็น Web Services ก็เนื่องจาก Web Application ข้างต้นใช้ข้อมูล YQL จาก RSS Feed ที่ได้มาจาก Thai Open Source เจ้า YQL จะเป็นตัว Query และแปลงผลลัพท์ออกมาเป็น json เอาไปให้ Web Application อีกที
  2. Web Application เป็นเว็บที่พัฒนาด้วย jQuery Mobile ทำให้เว็บเล็กเร็วและสวยงาม เล่น Effect ได้เหมือนเขียน App จริงๆ
  3. Mobile App เขียนบน Android มี WebView อยู่ตัวนึงเปิดเว็บ Web Application งี่เง่าตัวนึงไว้

จริงๆ แล้วไม่ต้องทำอะไรให้มันดูยุ่งยากขนาดนี้ก็ได้ เช่นเขียน RPC ต่อกับ Drupal โดยตรงอะไรอย่างนี้ แต่ด้วยความที่เป็นศิษย์มีครูอยู่ต่างประเทศก็เลยเล่นท่ายากส์นิดนึง สำหรับหน้าจอโปรแกรมดูด้านล่างเลยครับ ผมมีแต่ tablet บ้านยากจนไม่มีตังค์ซื้อมือถือ Android น่ะครับ 😛