NFC บน Nexus S

เผอิญมีโอกาสได้ทำงานเกี่ยวกับ NFC บน Nexus S ก็เลยมาแบ่งปันประสบการณ์ว่าการที่ทีมแอนดรอยด์บอกว่า Android 2.3 Gingerbread สนับสนุน NFC นั้นมันเป็นอย่างไร

NFC คืออะไร

ก่อนอื่นก็คงขอพูดโดยคร่าวๆก่อนว่า NFC คืออะไร

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

แต่เจ้าสิ่งที่เราเห็นบนรถไฟฟ้าอันนั้นจริงๆเรียกว่า Proximity หรือถ้าเรียกอีกชื่อหนึ่งที่คนอาจจะคุ้นเคยกว่าคือ RFID (ซึ่งจริงๆแล้วมันคือคนละคำกัน RFID เป็น Proximity แบบหนึ่ง) การทำงานจะต้องมีตัวที่เรียกว่าตัวอ่าน (Reader) และการ์ด (Tag)

ส่วน NFC นั้นก็คล้ายกับ RFID อีกนั่นแหละเพราะเบื้องหลังมันคือ Proximity ตัวหนึ่งและมันสนับสนุนเทคโนโลยี RFID ได้แบบเต็มรูปแบบ เราสามารถใช้ NFC ในการอ่านหรือเขียน RFID ได้ทันที แต่สิ่งที่ NFC เหนือกว่าคือ NFC สามารถปรับเปลี่ยนตัวเองให้เป็น Reader หรือ Tag ก็ได้! ยังผลให้เราสามารถนำมันไปใช้ในการสื่อสารระหว่างกันได้ โดยจะมีอยู่ 3 โหมดการใช้งานที่ใช้กันคือ

1) ทำตัวเป็น Reader
2) แปลงร่างเป็น Tag
3) คุยกันแบบ P2P

Android 2.3 พร้อมสนับสนุน NFC มันเป็นอย่างไรกัน!?!

ตอนแรกก็ไม่เข้าใจว่ามันสนับสนุนยังไงกัน ก็เลยมาลองเล่นเอง ปรากฎว่ามันทำงานเป็น Intent ตัวนึง …. แบบนี้!

เราสามารถสั่งเปิดปิด NFC ได้เหมือนที่ทำกับ WiFi และ Bluetooth

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

และเมื่อมี Tag มาเข้าใกล้ ระบบก็ยิง Intent ที่ชื่อว่า android.nfc.action.TAG_DISCOVEREDg ออกมา จากนั้นโปรแกรมทั้งหลายที่เรียกดัก Intent ไว้ก็จะเสนอหน้าออกมาให้เลือก

ซึ่งตรงนี้มันก็เหมือนกับว่าเราจะสั่งเปิดเว็บ ถ้าเราลงโปรแกรมไว้หลายตัว มันก็จะเด้งให้เลือกว่าจะเปิดเว็บด้วยโปรแกรมอะไร

เมื่อเราเลือกโปรแกรมเสร็จ ก็สามารถนำ ID และข้อมูลในการ์ดไปใช้งานต่อได้ทันทีในฟังก์ชั่น resolveIntent(…)

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

ทำไม NFC ถึงน่าสนใจ

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

NFC tag ซึ่งมีราคาไม่กี่บาท จะมอบศักยภาพมหาศาลให้กับผู้โฆษณา ผู้ค้าปลีก และอื่นๆ
เพื่อให้เข้าถึง มอบสิทธิประโยชน์ และติดต่อสื่อสารกับลูกค้า
เราสามารถติดตั้ง NFC tag ที่ไหนก็ได้ ไม่ว่าจะเป็นร้านขายโทรศัพท์ ซูเปอร์มาร์เก็ต หรือร้านกาแฟ
ซึ่งสามารถวัดผลลัพธ์ได้และเห็นผลทันที

การเปิดศักยภาพ NFC tag ไม่ต้องอาศัยโครงสร้างพื้นฐานอะไรมากมาย
เพียงแค่มีการวางตลาดอย่างแพร่หลายของอุปกรณ์สื่อสารที่มีเทคโนโลยี NFC
และการตระหนักถึงคุณประโยชน์ของ NFC tag ในกลุ่มผู้โฆษณาเท่านั้น

NFC on Nokia C7

นอกจากการอ่าน tag แล้ว Open NFC ยังสามารถเชื่อมต่อโทรศัพท์ NFC 2 เครื่องได้ง่ายๆ
เพียงแค่นำเครื่องทั้งสองแตะกัน คุณก็สามารถแบ่งปันเนื้อหา เช่น รูปถ่าย หรือการเล่นเกมส์คู่
โดยไม่เสียเวลาเชื่อมต่ออย่างบลูทูธ ล่าสุดเกมส์สุดฮิตอย่าง Angry Birds
ได้ออก Angry Birds Free With Magic
เกมส์เวอร์ชั่นพิเศษสำหรับอุปกรณ์สื่อสารที่มีเทคโนโลยี NFC อย่าง Nokia C7 ซึ่งได้ซ่อนขั้นพิเศษของเกมส์เอาไว้
ซึ่งจะเข้าไปเล่นได้ต่อเมื่อนำโทรศัพท์ NFC ของคุณแตะกับ Nokia C7 หรืออ่าน NFC tag
ที่จะนำคุณสู่ร้านค้าออนไลน์ของโนเกียเพื่อดาวน์โหลดขั้นพิเศษของเกมส์

nokia bluetooh headset

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

สรุปคือการใช้งานจะต้อง (1) เปิด NFC (2) แตะบัตร (3) เลือกโปรแกรมที่จะเปิด … ซึ่งไม่สะดวกเอาเลยหละจริงๆแล้ว

ข้อดีและข้อเสียของ NFC

ข้อดี
– อ่านทะลุวัสดุหลายๆชนิดได้เช่นกระจก(บางๆ) หรือเนื้อคน
– การตรวจจับและเริ่มต้นเชื่อมต่อทำได้เร็วมาก
– ใช้ในที่มืดได้
– นำไปใช้แทนระบบ RFID ที่มีอยู่ในชีวิตประจำวันได้ … ตามหลักการแล้วเราสามารถเปลี่ยนมือถือของเราเป็นบัตรรถไฟฟ้าได้ทันที (แต่ไม่ใช่แบบข่าวใน DroidSans ที่เพิ่งเขียนไปนะ!)
– อายุการใช้งานยืนยาว อายุขัยค่อนข้างสูง

ข้อเสีย
– ใช้อ่านทะลุโลหะไม่ได้
– นำ Tag ไปวางไว้บนโลหะจะอ่านไม่ได้
– ความเร็วในการรับส่งข้อมูลยังไม่สูงมากนัก
– ต้นทุนสูงกว่า Barcode และ 2D Barcode (มากกกกก)
– ต้องพึ่งพา Hardware พิเศษ ต่างกับ 2D Barcode ที่ใช้กล้องมือถือธรรมดาๆได้เลย

การประยุกต์ใช้ NFC

– โรงแรมหัวใสพัฒนาระบบ Check-in โรงแรมตั้งแต่เราอยู่ที่สนามบิน เมื่อถึงโรงแรมเราสามารถนำมือถือไปเปิดประตูห้องได้ทันที!

– ซื้อหนังสือพิมพ์ได้ในเวลาไม่กี่วินาที โดยเฉพาะในช่วงเร่งรีบยามเช้า

– รับตารางเวลาต่างๆ เพียงแค่แตะโทรศัพท์มือถือกับ smart poster

– โดยสารรถประจำทาง รถไฟ หรือรถไฟฟ้า เพียงโหลดข้อมูลบัตรโดยสารเข้าไปในโทรศัพท์ และแตะโทรศัพท์ของคุณกับประตูทางเข้า NFC

– แลกเปลี่ยนข้อมูลการติดต่อ และข้อมูลอื่นๆ กับเพื่อนหรือเพื่อนร่วมงานโดยเพียงแค่นำโทรศัพท์มาแตะกัน

– ทำ RFID tag ของคุณเอง โดยใส่ข้อมูลการติดต่อ และเชื่อมต่อไปยังบริการมือถือ เช่น ข่าว พยากรณ์อากาศ ราคาหุ้น

– อุปกรณ์ยืนยันสถานะบุคคล

– บัตรโดยสารเครื่องบิน

– กุญแจอิเล็กทรอนิกส์สำหรับรถยนต์ โรงแรม หรือสำนักงาน

ความคิดเห็นส่วนตัวเกียวกับ NFC

ทั้งนี้ทั้งนั้น NFC ไม่ใช่เทคโนโลยีใหม่เลย หากแต่เป็นเทคโนโลยีที่โนเกียเคยทำมาแล้วเมื่อ 4-5 ปีที่แล้ว จนถึงตอนนี้มีเป็นสิบรุ่นที่มี NFC แต่… NFC ก็ไม่เกิด คงเพราะว่า Target ของ Nokia User ต่างออกไปและไม่คิดที่จะใช้อะไรพวกนี้ แต่พอ Nexus S ประกาศตัวมาว่าสนับสนุนปุ๊บ ก็เริ่มเห็นวี่แววของอนาคตลางๆแล้วหละ ^_^ และยิ่งได้ยินแว่วๆว่า iPhone 5 ก็จะสนับสนุน ดังนั้น … NFC … มาแน่ Laughing out loud

อย่างไรก็ตาม NFC ยังต้องพึ่งพา Hardware โดยเฉพาะในการใช้งาน จึงเกิดเป็นคำถามว่า ดังนั้นเทคโนโลยีนี้จะเกิดหรือไม่ก็ขึ้นอยู่กับผู้ผลิตโทรศัพท์มือถือเป็น ส่วนใหญ่ หากสุดท้าย Device ยังไม่สามารถเข้าถึงคนส่วนใหญ่ได้ เทคโนโลยีนี้ก็ยากนักที่จะเกิดในวงกว้าง

Resource ที่น่าสนใจสำหรับนักพัฒนา

1. ใน SDK ที่โหลดมา ค้นหาตัวอย่างที่ชื่อว่า NFCDemo ตัวนี้เหมาะกับการเริ่มต้นมาก

2. สำหรับการต่อยอด ดูมาหลายเว็บแล้วพบว่าเว็บนี้เวอร์คที่สุด ไปอ่านกันได้เลย http://programming-android.labs.oreilly.com/ch18.html

อย่างไรก็ตามมันจะมีเรื่ององค์ความรู้เกี่ยวกับ RFID หลายประการที่อาจจะต้องศึกษากันเพิ่มอีก อันนี้ก็ลองหาอ่านหาลองกันดูครับ ซับซ้อนนิดหน่อยแต่ก็ไม่ได้ยากเกินความสามารถแน่นอน ^_^

credit : http://droidsans.com/nfc-experience-on-nexus-s

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s