20.11.2016 Views

ANDROID APP

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

169<br />

บทที่ 7<br />

การติดต่อกับฮาร์ดแวร์ต่างๆ<br />

อุปกรณ์แอนดรอยด์ที่ถูกผลิตและจำหน่ายในปัจจุบันนี้มีรายละเอียดของฮาร์ดแวร์ที่หลากหลาย<br />

และแตกต่างกันไปตามแต่ละผู้ผลิต รวมถึงการติดตั้งตัวตรวจจับต่างๆ เช่น กล้องถ่ายรูป ตัววัดอัตรา<br />

เร่ง ตัววัดสนามแม่เหล็ก ตัววัดความดันบรรยากาศ ตัววัดอุณหภูมิด้วย ซึ่งส่วนใหญ่จะมีติดตั้งมาให้อยู่<br />

แล้ว ส่วนการติดต่อต่างๆ เช่น ระบบโทรศัพท์ บลูทูธ และไวไฟ เราก็สามารถเขียนชุดคำสั่งเพื่อ<br />

ควบคุมการทำงานของอุปกรณ์เหล่านี้ได้ ในบทนี้จะแสดงถึงการใช้ชุดคำสั่งเพื่อควบคุมการทำงานของ<br />

ฮาร์ดแวร์ด้วยการใช้ API (Application Programming Interfaces) ภายในแอพที่เราพัฒนาขึ้น<br />

ชุดคำสั่งในบทนี้จะทำงานได้ดีบนอุปกรณ์แอนดรอยด์จริงๆ ถ้าทดสอบบนเครื่องมือจำลองระบบ<br />

ปฏิบัติการแอนดรอยด์นั้น อาจมีความผิดพลาดและคลาดเคลื่อนมากกว่า เพราะมีรายละเอียดของ<br />

ฮาร์ดแวร์บางอย่างไม่เหมือนกัน<br />

กล้องถ่ายรูป<br />

กล้องถ่ายรูปจัดเป็นคุณสมบัติพื้นฐานที่มีอยู่ในอุปกรณ์แอนดรอยด์ โดยในแง่ของการตลาดนั้น<br />

คุณสมบัติข้อนี้จะถูกใช้เป็นจุดขายมากที่สุด ซึ่งในอุปกรณ์แอนดรอยด์รุ่นหลังๆ ก็มีการพัฒนาความ<br />

สามารถของกล้องถ่ายรูปให้มีประสิทธิภาพมากขึ้น ปกติแล้วการประมวลผลรูปภาพนั้นจะทำได้หลังจาก<br />

ถ่ายรูปแล้วเท่านั้น แต่ในระบบปฏิบัติการแอนดรอยด์จะมีแอพเกี่ยวกับการถ่ายรูปบางแอพที่สามารถ<br />

ประมวลผลภาพเพื่อดูผลลัพธ์ก่อนที่จะถ่ายรูปได้ทันที<br />

วิธีเข้าถึงการทำงานของกล้องถ่ายรูปมีอยู่ 2 วิธี คือ ใช้อินเท็นต์ของระบบปฏิบัติการเพื่อแสดง<br />

หน้าจอการถ่ายรูปที่มีอยู่แล้วในระบบปฏิบัติการตามคำสั่งนี้<br />

Intent intent = new Intent(“android.media.action.IMAGE_CAPTURE”);<br />

startActivity(intent);<br />

ส่วนวิธีที่ 2 จะเป็นการสร้างอินสแตนซ์ของคลาส Camera ซึ่งมีความยืดหยุ่นในการใช้งาน<br />

มากกว่า เพราะสามารถปรับแต่งค่าต่างๆ และสร้างเลย์เอาต์ของกล้องถ่ายรูปได้เอง เวลาใช้งานคลาส<br />

นี้ เราจะต้องกำหนดสิทธิ์ในการใช้งานในไฟล์ Manifest ดังนี้<br />

<br />

จากคำสั่งข้างต้นระบบจะเปิดให้เราสามารถใช้คลาสเพื่อเข้าถึงการทำงานของกล้องถ่ายรูปได้

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!