ความรู้เบื้องต้น :: การประกาศ Manifest File [2]

เนื่องจากระบบปฏิบัติการ Android ถูกนำไปใช้บนหลากหลาย Device และแต่ละ Device ก็มีคุณสมบัติ (Feature) และความสามารถ (Capability) ที่ไม่เหมือนกัน ดังนั้นเพื่อป้องกันไม่ใช้ Application ที่พัฒนาขึ้นมาถูกติดตั้งบน Device ที่ขาดคุณสมบัติ (Feature) หรือความสามารถ (Capability) ที่ Application ต้องการ จึงจำเป็นต้องประกาศไว้ใน Manifest File ว่า Application ที่พัฒนาขึ้นมาต้องการคุณสมบัติ (Feature) หรือความสามารถ (Capability) อะไรบ้าง ซึ่งการประกาศเหล่านี้จะถูก Google Play อ่านค่า เมื่อผู้ใช้ได้ค้นหา Application ผ่าน Google Play บน Device ของผู้ใช้ และถ้า Device ของผู้ใช้ไม่มีคุณสมบัติ (Feature) หรือความสามารถ (Capability) ที่ Application ต้องการ แล้ว Google Play ก็จะไม่อนุญาติให้ Device ติดตั้ง Application นั้น
ตัวอย่างเช่น ถ้า Application ประกาศ Manifest File ว่าต้องการ Device ที่มี Camera และ API อย่างน้อย Level 2.1 แล้วถ้า Device ใดที่ไม่มี Camera หรือใช้ API Level ที่น้อยกว่า 2.1 จะทำให้ Device นั้นไม่สามารถติดตั้ง Application นั้นผ่าน Google Play ได้
อย่างไรก็ตาม ถ้าไม่มีการประกาศที่ Manifest File ว่า Application ต้องการ Device ที่มี Camera ก็สามารถทำได้ และจะทำให้ Device ที่ไม่มี Camera สามารถติดตั้ง Application นั้นได้ ซึ่งในกรณีนี้ควรมีการตรวจสอบใน Code ว่า เมื่อ Application ต้องการใช้ Camera และ Device นั้นไม่มี Camera จะทำให้ Device นั้นไม่สามารถใช้งานความสามารถในส่วนนั้นของ Application ได้

ทั้งนี้คุณสมบัติ (Feature) และความสามารถ (Capability) หลัก ๆ ที่ควรจะพิจารณาถึง เพื่อประกาศไว้ใน Manifest File มีดังนี้
  • Screen Size และ Density เป็นการประกาศว่า Application ต้องการ Device ที่มีขนาดหน้าจอเป็นอย่างไร โดยให้ประกาศ element <supports-screens> ไว้ภายใน Manifest File ซึ่ง Android มีทางเลือกให้สามารถระบุได้ใน 2 ลักษณะ คือ ลักษณะของ Screen Size (ได้แก่ small, normal, large, และ extra large) และลักษณะของ Density (ได้แก่ low density, medium density, high density, และ extra high density) ทั้งนี้ถ้าไม่มีการประกาศในส่วนนี้ จะทำให้ Application รองรับขนาดหน้าจอทุกรูปแบบ
  • Input Configuration เป็นการประกาศว่า Application ต้องการ Device ที่มี Input Mechanism อะไรบ้าง เช่น Hardware Keyboard, Trackball, หรือ Five-way navigation pad เป็นต้น โดยให้ประกาศ element <uses-configuration> ไว้ภายใน Manifest File
  • Device Feature เป็นการประกาศว่า Application ต้องการ Device ที่มี Hardware หรือ Software อะไรบ้าง เช่น Camera, Light Sensor, Bluetooth เป็นต้น โดยให้ประกาศ element <uses-feature> ไว้ภายใน Manifest File
  • Platform Version เป็นการประกาศว่า Application ต้องการ Device ที่ใช้ API Level อย่างน้อยเท่าใด โดยให้ประกาศ element <uses-sdk> ไว้ภายใน Manifest File

0 ความคิดเห็น:

Copyright © 2012 DroidDevp.