วันพฤหัสบดีที่ 3 พฤศจิกายน พ.ศ. 2554

Android Development 101: ทำความรู้จักกับแอนดรอยด์

แอนดรอยด์คืออะไร?

แอนดรอยด์ (Android) หรือ ระบบปฏิบัติการแอนดรอยด์ (Android Operating System) เป็นชื่อเรียกชุดซอฟท์แวร์ หรือแพลตฟอร์ม (Platform) สำหรับอุปกรณ์อีเล็กทรอนิกส์ ที่มีหน่วยประมวลผลเป็นส่วนประกอบ อาทิเช่น คอมพิวเตอร์, โทรศัพท์ (Telephone), โทรศัพท์เคลื่อนที่ (Cell phone), อุปกรณ์เล่นอินเตอร์เน็ตขนาดพกพา (MID) เป็นต้น แอนดรอยด์นั้น ถือกำเนิดอย่างเป็นทางการในวันที่ 5 พฤศจิกายน 2550 โดยบริษัท กูเกิล จุดประสงค์ของแอนดรอยด์นั้น มีจุดเริ่มต้นมาจากบริษัท Android Inc. ที่ได้นำเอาระบบปฏิบัติการลีนุกซ์ (Linux) ซึ่งนิยมนำไปใช้งานกับเครื่องแม่ข่าย (Server) เป็นหลัก นำมาลดทอนขนาดตัว (แต่ไม่ลดทอนความสามารถ) เพื่อให้เหมาะสมแกการนำไปติดตั้งบนอุปกรณ์พกพา ที่มีขนาดพื้นที่จัดเก็บข้อมูลที่จำกัด โดยหวังว่า แอนดรอยด์ นั้นจะเป็นหุ่นยนต์ตัวน้อย ๆ ที่คอยช่วยเหลืออำนวยความสะดวกแก่ผู้ที่พกพามัน ไปในทุกที่ ทุกเวลา
กูเกิลแอนดรอยด์ เป็นชื่อเรียกอย่างเป็นทางการของเจ้าแอนดรอยด์ เนื่องจากปัจจุบันนี้ บริษัทกูเกิล เป็นผู้ที่ถือสิทธิบัตรในตราสัญญาลักษณ์ ชื่อ และ รหัสต้นฉบับ (Source Code) ของแอนดรอยด์ ภายใต้เงื่อนไขการพัฒนาแบบ GNL โดยเปิดให้นักพัฒนา (Developer) สามารถนำรหัสต้นฉบับ ไปพัฒนาปรับแต่งได้อย่างเปิดเผย (Open source) ทำให้แอนดรอยด์มีผู้เข้าร่วมพัฒนาเป็นจำนวนมาก และพัฒนาไปได้อย่างรวดเร็ว
แอนดรอยด์เปิดตัวอย่างเป็นทางการเมื่อวันที่ 5 พฤษภาคม พุทธศักราช 2550 ปัจจุบันมีผู้ร่วมพัฒนากว่า 52 องค์กร ประกอบด้วยบริษัทซอฟท์แวร์ บริษัทผู้ผลิตอุปกรณ์ บริษัทผู้ผลิตชิ้นส่วนอิเล็คทรอนิกส์ บริษัทผู้ให้บริการเครือข่าย และบริษัทที่เกี่ยวข้องกับการสื่อสาร ฯลฯ

ประเภทของชุดซอฟท์แวร์

เนื่องจากแอนดรอยด์นั้นเปิดให้นักพัฒนาเข้าไปชมรหัสต้นฉบับได้ ทำให้มีผู้พัฒนาจากหลายฝ่ายนำเอารหัสต้นฉบับมาปรับแต่ง และสร้างแอนดรอยด์ในแบบฉบับของตนเองขึ้น เราจึงแบ่งประเภทของแอนดรอยด์ออกได้เป็น 3 ประเภท ดังต่อไปนี้
  1. Android Open Source Project (AOSP) เป็นแอนดรอยด์ประเภทแรกที่กูเกิลเปิดให้สามารถนำ “ต้นฉบับแบบเปิด” ไปติดตั้งและใช้งานในอุปกรณ์ต่าง ๆ ได้โดยไม่ต้องเสียค่าใช้จ่ายได ๆ
  2. Open Handset Mobile (OHM) เป็นแอนดรอยด์ที่ได้รับการพัฒนาร่วมกับกลุ่มบริษัทผู้ผลิตอุปกรณ์พกพา ที่เข้าร่วมกับกูเกิลในนาม Open Handset Alliances (OHA) ซึ่งบริษัทเหล่านี้จะพัฒนาแอนดรอยด์ในแบบฉบับของตนออกมา โดยรูปร่างหน้าตาการแสดงผล และฟังค์ชั่นการใช้งาน จะมีความเป็นเอกลักษณ์ และมีลิขสิทธิ์เป็นของตน พร้อมได้รับสิทธิ์ในการมีบริการเสริมต่าง ๆ จากกูเกิล ที่เรียกว่า Google Mobile Service (GMS) ซึ่งเป็นบริการเสริมที่ทำให้แอนดรอยด์มีประสิทธิภาพ เป็นไปตามจุดประสงค์ของแอนดรอยด์ แต่การจะได้มาซึ่ง GMS นั้น ผู้ผลิตจะต้องทำการทดสอบระบบ และขออนุญาตกับทางกูเกิลก่อน จึงจะนำเครื่องออกสู่ตลาดได้
  3. Cooking หรือ Customize เป็นแอนดรอยด์ที่นักพัฒนานำเอารหัสต้นฉบับจากแหล่งต่าง ๆ มาปรับแต่ง ในแบบฉบับของตนเอง โดยจะต้องทำการปลดล๊อคสิทธิ์การใช้งานอุปกรณ์ หรือ Unlock เครื่องก่อน จึงจะสามารถติดตั้งได้ โดยแอนดรอยด์ประเภทนี้ถือเป็นประเภทที่มีความสามารถมากที่สุด เท่าที่อุปกรณ์เครื่องนั้น ๆ จะรองรับได้ เนื่องจากได้รับการปรับแต่งให้เข้ากับอุปกรณ์นั้น ๆ จากผู้ใช้งานจริง

สิทธิ์ในการใช้งานระบบ

เช่นเดียวกับระบบปฏิบัติการทั่วไป ที่มีการจำกัดการใช้งาน และการเข้าถึงส่วนต่าง ๆภายในระบบ เพื่อความปลอดภัยของระบบ และ ผู้ใช้งาน อุปกรณ์ที่ติดตั้งระบบแอนดรอยด์จึงมีการจำกัดสิทธิ์ไว้ (เว้นแต่ได้ทำการปลดล๊อคสิทธิ์ หรือ root เครื่องแล้ว) สามารถแบ่งสิทธิ์ของผู้ใช้ในการเข้าถึงระบบคร่าว ๆ ได้ดังต่อไปนี้
  1. สิทธิ์ root สิทธ์การใช้ใช้งานระดับราก ซึ่งถือว่าเป็นรากฐานของระบบ จึงมีความสามารถในการเข้าถึงทุก ๆ ส่วนของระบบ
  2. สิทธิ์ ADB (Android Develop Bridge) นักพัฒนาสามารถเข้าถึงส่วนต่าง ๆ ของระบบได้ผ่านสิทธิ์นี้
  3. Application & System สิทธิ์ของโปรแกรมในการเข้าถึงระบบ และสิทธิ์ของระบบในการเข้าถึงอุปกรณ์ โดยสิทธิ์เหล่านี้ ตัวระบบจะเป็นตัวจัดการมอบและถอนสิทธิ์ ตามเงื่อนไขที่กำหนดซึ่งจะถูกแบ่งย่อยออกเป็นหลายหัวข้อ (http://developer.android.com/reference/android/Manifest.permission.html)
  4. End-user ผู้ใช้งานขั้นสุดท้าย ซึ้งก็คือ คุณ และ คุณ ทั้งหลาย ที่ใช้การเข้าถึงส่วนต่าง ๆ ของระบบผ่านช่องทางสิทธิ์ที่โปรแกรมได้รับอีกที โดยจะถูกจำกัดไม่ให้เข้าถึงในส่วนที่เป็นอันตรายต่อแกนระบบและอุปกรณ์

ข้อจำกัดของแอนดรอยด์

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

ไม่มีความคิดเห็น:

แสดงความคิดเห็น