คำจำกัดความความเข้ากันได้ของ Android 1.6

คำจำกัดความความเข้ากันได้ของ Android: Android 1.6
แอนดรอยด์ 1.6r2
กูเกิลอิงค์
ความเข้ากันได้@android.com

สารบัญ
1. บทนำ ............................................... ................................................ .................. 4
2. ทรัพยากร ............................................... ................................................ ...................... 4
3. ซอฟต์แวร์ ............................................... ................................................ ........................ 5
3.1. ความเข้ากันได้ของ API ที่มีการจัดการ ............................................... .................................... 5
3.2. ความเข้ากันได้ของ Soft API ............................................... ........................................... 6
3.2.1. สิทธิ์................................................. ................................................ ... 6
3.2.2. สร้างพารามิเตอร์ ................................................ ........................................... 6
3.2.3. ความเข้ากันได้ของเจตนา................................................ .......................................... 8
3.2.3.1. จุดประสงค์การใช้งานหลัก ............................................... ............................ 8
3.2.3.2. การแทนที่เจตนา ................................................ ......................................... 8
3.2.3.3. เนมสเปซเจตนา................................................ .................................... 8
3.2.3.4. ความตั้งใจในการออกอากาศ ................................................ ......................................... 9
3.3. ความเข้ากันได้ของ API ดั้งเดิม ............................................... ......................................... 9
3.4. ความเข้ากันได้ของเว็บ API ............................................... ............................................ 9
3.5. ความเข้ากันได้ของพฤติกรรม API ........................................... ................................ 10
3.6. เนมสเปซ API................................................ ................................................ . 10
3.7. ความเข้ากันได้ของเครื่องเสมือน ............................................... ........................... 11
3.8. ความเข้ากันได้ของอินเทอร์เฟซผู้ใช้ ............................................... ............................... 11

3.8.1. วิดเจ็ต .................................................. ................................................ ........ 11
3.8.2. การแจ้งเตือน................................................. ................................................ 12
3.8.3. ค้นหา ................................................. ................................................ .......... 12
3.8.4. ขนมปังปิ้ง...................................................... ................................................ .......... 12

4. ความเข้ากันได้ของซอฟต์แวร์อ้างอิง ................................................ ................................ 12
5. ความเข้ากันได้ของบรรจุภัณฑ์แอปพลิเคชัน ........................................... ........................... 13
6. ความเข้ากันได้ของมัลติมีเดีย............................................ ........................................... 13
7. ความเข้ากันได้ของเครื่องมือสำหรับนักพัฒนา................................................ ........................................ 14
8. ความเข้ากันได้ของฮาร์ดแวร์ ........................................... ................................................ 15
8.1. แสดง ................................................. ................................................ ................ 15
8.1.1. การกำหนดค่าจอแสดงผลมาตรฐาน ............................................... .................. 15
8.1.2. การกำหนดค่าการแสดงผลที่ไม่ได้มาตรฐาน ........................................... ............ 16
8.1.3. เมตริกการแสดงผล................................................ ............................................... 16

8.2. แป้นพิมพ์ .................................................. ................................................ ............ 16
8.3. ระบบนำทางแบบไม่สัมผัส .............................................. ............................................ 16
8.4. การวางแนวหน้าจอ................................................ ................................................ 17
8.5. อินพุตหน้าจอสัมผัส................................................ ................................................ 17
8.6. ยูเอสบี ................................................. ................................................ ...................... 17
8.7. ปุ่มนำทาง ................................................ ................................................ .. 17
8.8. อินเตอร์เน็ตไร้สาย .................................................. ................................................ ...................... 17
8.9. กล้อง ................................................. ................................................ ............... 18
8.9.1. กล้องที่ไม่ใช่ออโต้โฟกัส ........................................... ............................... 18
8.10. มาตรความเร่ง................................................ ................................................ .. 18
8.11. เข็มทิศ ................................................. ................................................ .......... 19
8.12. จีพีเอส ................................................. ................................................ ................... 19
8.13. โทรศัพท์................................................. ................................................ ......... 19
8.14. ปุ่มควบคุมระดับเสียง................................................ ................................................ 19

9. ความเข้ากันได้ด้านประสิทธิภาพ................................................. ........................................... 19
10. ความเข้ากันได้ของโมเดลความปลอดภัย ........................................... ......................................... 20
10.1. สิทธิ์ ............................................... ................................................ ..... 20
10.2. การแยกผู้ใช้และกระบวนการ ........................................... ............................... 20
10.3. สิทธิ์ระบบไฟล์................................................ ...................................... 21
11. ชุดทดสอบความเข้ากันได้ ........................................... ........................................... 21

12. ติดต่อเรา ........................................... ................................................ .................... 21
ภาคผนวก A: จุดประสงค์ของการสมัครที่จำเป็น ............................................ ......................... 22
ภาคผนวก B: จุดประสงค์ในการออกอากาศที่จำเป็น ............................................ ........................... 0
ภาคผนวก C: ข้อพิจารณาในอนาคต................................................ ................................... 0

1. อุปกรณ์ที่ไม่ใช่โทรศัพท์ ........................................... ............................................... 30
2. ความเข้ากันได้ของบลูทูธ ........................................... ............................................ 30
3. ส่วนประกอบฮาร์ดแวร์ที่จำเป็น................................................ ........................... 30
4. ตัวอย่างการใช้งาน ........................................... ................................................. 30
5. หน้าจอสัมผัส ........................................... ................................................ .......... 30
6. ประสิทธิภาพ................................................ ................................................ ............ 31

1. บทนำ
เอกสารนี้ระบุข้อกำหนดที่ต้องปฏิบัติตามเพื่อให้โทรศัพท์มือถือเป็นไปตามนั้น
เข้ากันได้กับระบบปฏิบัติการ Android 1.6 คำจำกัดความนี้ถือว่ามีความคุ้นเคยกับโปรแกรมความเข้ากันได้ของ Android
[แหล่งข้อมูล, 1].
การใช้คำว่า "ต้อง", "ต้องไม่", "จำเป็น", "จะต้อง", "ไม่ควร", "ควร", "ไม่ควร", "แนะนำ"
"อาจ" และ "เป็นทางเลือก" เป็นไปตามมาตรฐาน IETF ที่กำหนดใน RFC2119 [ แหล่งข้อมูล , 2]
ตามที่ใช้ในเอกสารนี้ "ผู้ดำเนินการอุปกรณ์" หรือ "ผู้ดำเนินการ" คือบุคคลหรือองค์กรที่กำลังพัฒนา
โซลูชันฮาร์ดแวร์/ซอฟต์แวร์ที่ใช้ Android 1.6 "การใช้งานอุปกรณ์" หรือ "การใช้งาน" คือ
โซลูชั่นฮาร์ดแวร์/ซอฟต์แวร์จึงได้รับการพัฒนา
หากต้องการพิจารณาว่าเข้ากันได้กับ Android 1.6 การใช้งานอุปกรณ์:
1. ต้องเป็นไปตามข้อกำหนดที่แสดงในคำจำกัดความความเข้ากันได้นี้ รวมถึงเอกสารใดๆ
รวมอยู่ในการอ้างอิง
2. ต้องผ่านการทดสอบความเข้ากันได้ของ Android (CTS) ซึ่งเป็นส่วนหนึ่งของ Android Open
โครงการต้นทาง [ ทรัพยากร , 3]. CTS ทดสอบส่วนประกอบส่วนใหญ่ แต่ไม่ใช่ทั้งหมด ที่ระบุไว้ในบทความนี้
เอกสาร.
ในกรณีที่คำจำกัดความนี้หรือ CTS เงียบ ไม่ชัดเจน หรือไม่สมบูรณ์ ถือเป็นความรับผิดชอบของอุปกรณ์
Implementer เพื่อให้แน่ใจว่าเข้ากันได้กับการใช้งานที่มีอยู่ ด้วยเหตุนี้ระบบปฏิบัติการ Android Open
Source Project [ Resources , 4] เป็นทั้งข้อมูลอ้างอิง และการใช้งาน Android ที่ต้องการ อุปกรณ์
ผู้ดำเนินการได้รับการสนับสนุนอย่างยิ่งให้ยึดการใช้งานของตนตามซอร์สโค้ด "อัปสตรีม"
หาได้จากโครงการ Android Open Source ในขณะที่ส่วนประกอบบางอย่างสามารถทดแทนได้ตามสมมุติฐาน
หากมีการใช้แบบอื่น แนวทางปฏิบัตินี้ไม่สนับสนุนอย่างยิ่ง เนื่องจากจะผ่านการทดสอบ CTS
ยากขึ้นอย่างมาก เป็นความรับผิดชอบของผู้ดำเนินการเพื่อให้แน่ใจว่ามีความเข้ากันได้ทางพฤติกรรมอย่างสมบูรณ์ด้วย
การใช้งาน Android มาตรฐาน รวมถึงและนอกเหนือจากชุดทดสอบความเข้ากันได้
2. ทรัพยากร
ข้อกำหนดความเข้ากันได้นี้อ้างอิงถึงทรัพยากรจำนวนหนึ่งที่สามารถรับได้ที่นี่
1. ภาพรวมโปรแกรมความเข้ากันได้ของ Android: https://sites.google.com/a/android.com/compatibility/
มันทำงานอย่างไร
2. ระดับความต้องการ IETF RFC2119: http://www.ietf.org/rfc/rfc2119.txt
3. ชุดทดสอบความเข้ากันได้: http://sites.google.com/a/android.com/compatibility/compatibility-test-
ชุด--กะรัต
4. โครงการโอเพ่นซอร์ส Android: http://source.android.com/
5. คำจำกัดความและเอกสารประกอบของ API: http://developer.android.com/reference/packages.html
6. ผู้ให้บริการเนื้อหา: http://code.google.com/android/reference/android/provider/package-
สรุป.html
7. ทรัพยากรที่มีอยู่: http://code.google.com/android/reference/available-resources.html
8. ไฟล์ Manifest ของ Android: http://code.google.com/android/devel/bblocks-manifest.html
9. การอ้างอิงสิทธิ์ของ Android: http://developer.android.com/reference/android/
Manifest.permission.html
10. สร้างค่าคงที่: http://developer.android.com/reference/android/os/Build.html
11. WebView: http://developer.android.com/reference/android/webkit/WebView.html
12. ส่วนขยายเบราว์เซอร์ Gears: http://code.google.com/apis/gears/

13. ข้อมูลจำเพาะ Dalvik Virtual Machine พบได้ในไดเร็กทอรี dalvik/docs ของซอร์สโค้ด
เช็คเอาท์; มีให้ที่ http://android.git.kernel.org/?p=platform/
dalvik.git;a=tree;f=docs;h=3e2ddbcaf7f370246246f9f03620a7caccbfcb12;hb=HEAD

14. AppWidgets: http://developer.android.com/guide/practices/ui_guidelines/widget_design.html
15. การแจ้งเตือน: http://developer.android.com/guide/topics/ui/notifiers/notifications.html
16. คู่มือสไตล์ไอคอนแถบสถานะ: http://developer.android.com/guide/practices/ui_guideline
/icon_design.html#statusbarโครงสร้าง
17. ตัวจัดการการค้นหา: http://developer.android.com/reference/android/app/SearchManager.html
18. ขนมปังปิ้ง: http://developer.android.com/reference/android/widget/Toast.html
19. แอปสำหรับ Android: http://code.google.com/p/apps-for-android
20. คำอธิบายไฟล์ APK ของ Android: http://developer.android.com/guide/topics/fundamentals.html
21. สะพานดีบัก Android (adb): http://code.google.com/android/reference/adb.html
22. บริการตรวจสอบดีบัก Dalvik (ddms): http://code.google.com/android/reference/ddms.html
23. ลิง: http://developer.android.com/guide/developing/tools/monkey.html
24. เอกสารประกอบการแสดงความเป็นอิสระ:
25. ค่าคงที่การกำหนดค่า: http://developer.android.com/reference/android/content/res/
การกำหนดค่า.html
26. การวัดการแสดงผล: http://developer.android.com/reference/android/util/DisplayMetrics.html
27. กล้อง: http://developer.android.com/reference/android/hardware/Camera.html
28. พื้นที่พิกัดเซ็นเซอร์: http://developer.android.com/reference/android/hardware/
SensorEvent.html
29. การอ้างอิงความปลอดภัยและการอนุญาตของ Android: http://developer.android.com/guide/topics/security/
ความปลอดภัย.html
ทรัพยากรเหล่านี้จำนวนมากได้มาจาก Android 1.6 SDK โดยตรงหรือโดยอ้อม และจะเป็นเช่นนี้
มีฟังก์ชันการทำงานเหมือนกับข้อมูลในเอกสารประกอบของ SDK นั้น ในกรณีใดกรณีนี้
คำจำกัดความความเข้ากันได้ไม่เห็นด้วยกับเอกสารประกอบ SDK เอกสารประกอบ SDK จะได้รับการพิจารณา
เผด็จการ รายละเอียดทางเทคนิคใดๆ ที่ให้ไว้ในข้อมูลอ้างอิงที่รวมอยู่ข้างต้นจะได้รับการพิจารณาโดยการรวมไว้
เพื่อเป็นส่วนหนึ่งของข้อกำหนดความเข้ากันได้นี้
3. ซอฟต์แวร์
แพลตฟอร์ม Android มีทั้งชุดของ API ที่ได้รับการจัดการ ("ยาก") และเนื้อหาของ API ที่เรียกว่า "อ่อน"
เช่น ระบบ Intent, Native-code APIs และ Web-Application APIs ในส่วนนี้จะให้รายละเอียดเกี่ยวกับเรื่องยากและ
soft APIs ที่เป็นส่วนสำคัญในความเข้ากันได้ รวมถึงทางเทคนิคและอินเทอร์เฟซผู้ใช้ที่เกี่ยวข้องอื่นๆ
พฤติกรรม การใช้งานอุปกรณ์ต้องเป็นไปตามข้อกำหนดทั้งหมดในส่วนนี้
3.1. ความเข้ากันได้ของ API ที่มีการจัดการ
สภาพแวดล้อมการดำเนินการที่ได้รับการจัดการ (ตาม Dalvik) เป็นเครื่องมือหลักสำหรับแอปพลิเคชัน Android ที่
Android Application Programming Interface (API) คือชุดของอินเทอร์เฟซแพลตฟอร์ม Android ที่เปิดเผย
แอปพลิเคชันที่ทำงานในสภาพแวดล้อม VM ที่มีการจัดการ การใช้งานอุปกรณ์ต้องจัดเตรียมให้ครบถ้วน
การใช้งาน รวมถึงพฤติกรรมที่บันทึกไว้ทั้งหมดของ API ที่มีการจัดทำเอกสารใด ๆ ที่เปิดเผยโดย Android
1.6 SDK เช่น:
1. API ภาษา Java หลักของ Android [แหล่งข้อมูล, 5]
2. ผู้ให้บริการเนื้อหา [แหล่งข้อมูล , 6].
3. ทรัพยากร [ทรัพยากร, 7].
4. คุณลักษณะและองค์ประกอบ AndroidManifest.xml [ทรัพยากร, 8]

การใช้งานอุปกรณ์จะต้องไม่ละเว้น API ที่มีการจัดการใดๆ เปลี่ยนแปลงอินเทอร์เฟซ API หรือลายเซ็น หรือเบี่ยงเบน
จากลักษณะการทำงานที่บันทึกไว้ หรือรวมถึงการไม่ดำเนินการ ยกเว้นในกรณีที่ความเข้ากันได้นี้ได้รับอนุญาตเป็นการเฉพาะ
คำนิยาม.
3.2. ความเข้ากันได้ของ Soft API
นอกเหนือจาก API ที่มีการจัดการจากส่วนที่ 3.1 แล้ว Android ยังมี "soft" แบบรันไทม์เท่านั้นที่สำคัญอีกด้วย
API ในรูปแบบของสิ่งต่าง ๆ เช่น Intent การอนุญาต และลักษณะที่คล้ายกันของแอปพลิเคชัน Android
ที่ไม่สามารถบังคับใช้ได้ในเวลารวบรวมแอปพลิเคชัน ส่วนนี้ให้รายละเอียดเกี่ยวกับ API และระบบ "soft"
ลักษณะการทำงานที่จำเป็นสำหรับความเข้ากันได้กับ Android 1.6 การใช้งานอุปกรณ์ต้องตรงตามทุกประการ
ข้อกำหนดที่นำเสนอในส่วนนี้
3.2.1. สิทธิ์
ผู้ใช้อุปกรณ์จะต้องสนับสนุนและบังคับใช้ค่าคงที่การอนุญาตทั้งหมดตามที่จัดทำเอกสารโดย
หน้าอ้างอิงการอนุญาต [ แหล่งข้อมูล , 9] โปรดทราบว่าส่วนที่ 10 แสดงรายการข้อกำหนดเพิ่มเติมที่เกี่ยวข้อง
โมเดลความปลอดภัยของ Android
3.2.2. สร้างพารามิเตอร์
Android API มีค่าคงที่จำนวนหนึ่งในคลาส android.os.Build [Resources, 10] ที่ได้แก่
มีวัตถุประสงค์เพื่ออธิบายอุปกรณ์ปัจจุบัน เพื่อให้ค่าที่มีความหมายและสม่ำเสมอทั่วทั้งอุปกรณ์
การใช้งาน ตารางด้านล่างมีข้อจำกัดเพิ่มเติมเกี่ยวกับรูปแบบของค่าเหล่านี้
การใช้งานอุปกรณ์จะต้องสอดคล้อง
พารามิเตอร์
ความคิดเห็น
เวอร์ชันของระบบ Android ที่กำลังดำเนินการอยู่ในขณะนี้ในมนุษย์
android.os.Build.VERSION.RELEASE
รูปแบบที่อ่านได้ สำหรับ Android 1.6 ฟิลด์นี้ต้องมีค่าสตริง
"1.6"
เวอร์ชันของระบบ Android ที่กำลังดำเนินการอยู่ในรูปแบบ
android.os.Build.VERSION.SDK
เข้าถึงได้จากรหัสแอปพลิเคชันบุคคลที่สาม สำหรับ Android 1.6 ฟิลด์นี้
จะต้องมีค่าจำนวนเต็ม 4
ค่าที่เลือกโดยผู้ใช้อุปกรณ์ซึ่งกำหนดบิลด์เฉพาะ
ของระบบ Android ที่ใช้งานอยู่ในปัจจุบัน ในรูปแบบที่มนุษย์สามารถอ่านได้
ต้องไม่นำค่านี้กลับมาใช้ซ้ำกับบิลด์อื่นที่จัดส่งจนจบ
ผู้ใช้ android.os.Build.VERSION.INCREMENTAL การใช้งานทั่วไปของฟิลด์นี้คือเพื่อระบุหมายเลขบิลด์หรือ
ตัวระบุการเปลี่ยนแปลงการควบคุมแหล่งที่มาถูกใช้เพื่อสร้างบิลด์ ที่นั่น
ไม่มีข้อกำหนดเกี่ยวกับรูปแบบเฉพาะของฟิลด์นี้ ยกเว้นข้อกำหนดดังกล่าว
ต้องไม่เป็นค่าว่างหรือเป็นสตริงว่าง ("")
ค่าที่เลือกโดยผู้ใช้อุปกรณ์เพื่อระบุข้อมูลภายในเฉพาะ
ฮาร์ดแวร์ที่อุปกรณ์ใช้ ในรูปแบบที่มนุษย์สามารถอ่านได้ การใช้งานที่เป็นไปได้
android.os.Build.BOARD
ของฟิลด์นี้คือเพื่อระบุการแก้ไขเฉพาะของบอร์ดที่เปิดเครื่อง
อุปกรณ์. ไม่มีข้อกำหนดในรูปแบบเฉพาะของฟิลด์นี้
ยกเว้นว่าจะต้องไม่เป็นค่าว่างหรือสตริงว่าง ("")
ค่าที่เลือกโดยผู้ใช้อุปกรณ์ซึ่งระบุชื่อของ
android.os.Build.BRAND
บริษัท องค์กร บุคคล ฯลฯ ที่ผลิตอุปกรณ์ดังกล่าว
รูปแบบที่มนุษย์สามารถอ่านได้ การใช้ฟิลด์นี้ที่เป็นไปได้คือเพื่อระบุ OEM

และ/หรือผู้ให้บริการที่ขายอุปกรณ์ ไม่มีข้อกำหนดเกี่ยวกับ
รูปแบบเฉพาะของฟิลด์นี้ ยกเว้นว่าจะต้องไม่เป็นค่าว่างหรือว่างเปล่า
สตริง ("")
ค่าที่เลือกโดยผู้ใช้อุปกรณ์เพื่อระบุค่าเฉพาะ
การกำหนดค่าหรือการแก้ไขตัวถัง (บางครั้งเรียกว่า "อุตสาหกรรม
android.os.Build.DEVICE
design") ของอุปกรณ์ ไม่มีข้อกำหนดเกี่ยวกับรูปแบบเฉพาะ
ของฟิลด์นี้ ยกเว้นว่าจะต้องไม่เป็นค่าว่างหรือสตริงว่าง ("")
สตริงที่ระบุโครงสร้างนี้โดยไม่ซ้ำกัน มันควรจะสมเหตุสมผล
มนุษย์สามารถอ่านได้ ต้องเป็นไปตามเทมเพลตนี้:
$(PRODUCT_BRAND)/$(PRODUCT_NAME)/$(PRODUCT_DEVICE)/
$(TARGET_BOOTLOADER_BOARD_NAME):$(PLATFORM_VERSION)/
$(BUILD_ID)/$(BUILD_NUMBER):$(TARGET_BUILD_VARIANT)/
android.os.Build.ลายนิ้วมือ
$(BUILD_VERSION_TAGS)
ตัวอย่างเช่น: acme/mydevicel/generic/generic:Donut/ERC77/
3359:userdebug/test-keys
ลายนิ้วมือจะต้องไม่มีการเว้นวรรค หากช่องอื่นรวมอยู่ใน
เทมเพลตด้านบนมีช่องว่าง ควรแทนที่ด้วย ASCII
ขีดล่าง ("_") ในลายนิ้วมือ
สตริงที่ระบุโฮสต์โดยไม่ซ้ำกันที่บิลด์ถูกสร้างขึ้นในมนุษย์
android.os.Build.HOST
รูปแบบที่อ่านได้ ไม่มีข้อกำหนดเกี่ยวกับรูปแบบเฉพาะของสิ่งนี้
ยกเว้นว่าจะต้องไม่เป็นค่าว่างหรือสตริงว่าง ("")
ตัวระบุที่เลือกโดยผู้ใช้อุปกรณ์เพื่ออ้างถึงข้อมูลเฉพาะ
เผยแพร่ในรูปแบบที่มนุษย์สามารถอ่านได้ สนามนี้สามารถทำได้เหมือนกัน
android.os.Build.VERSION.INCREMENTAL แต่ควรเป็นค่า
android.os.Build.ID
ตั้งใจจะค่อนข้างมีความหมายสำหรับผู้ใช้ปลายทาง ไม่มี
ข้อกำหนดในรูปแบบเฉพาะของฟิลด์นี้ ยกเว้นว่าจะต้องไม่
เป็นโมฆะหรือสตริงว่าง ("")
ค่าที่เลือกโดยผู้ดำเนินการอุปกรณ์ซึ่งมีชื่อของ
อุปกรณ์ตามที่ผู้ใช้ปลายทางรู้จัก นี่ควรเป็นชื่อเดียวกัน
android.os.Build.MODEL
ซึ่งอุปกรณ์ดังกล่าวจะทำการตลาดและจำหน่ายให้กับผู้ใช้ปลายทาง ไม่มี
ข้อกำหนดในรูปแบบเฉพาะของฟิลด์นี้ ยกเว้นว่าจะต้องไม่
เป็นโมฆะหรือสตริงว่าง ("")
ค่าที่เลือกโดยผู้ใช้อุปกรณ์ที่มีการพัฒนา
ชื่อหรือชื่อรหัสของอุปกรณ์ จะต้องเป็นสิ่งที่มนุษย์สามารถอ่านได้ แต่ไม่ใช่
android.os.Build.PRODUCT
จำเป็นสำหรับการดูโดยผู้ใช้ปลายทาง ไม่มีข้อกำหนด
ในรูปแบบเฉพาะของฟิลด์นี้ ยกเว้นว่าจะต้องไม่เป็นค่าว่างหรือ
สตริงว่าง ("")
รายการแท็กที่คั่นด้วยเครื่องหมายจุลภาคซึ่งเลือกโดยผู้ใช้อุปกรณ์นั้น
แยกแยะการสร้างเพิ่มเติม ตัวอย่างเช่น "ไม่ได้ลงนาม, ดีบัก" สนามนี้
android.os.Build.TAGS
ต้องไม่เป็นค่าว่างหรือสตริงว่าง ("") แต่เป็นแท็กเดียว (เช่น
"ปล่อย") ก็ดี
android.os.Build.TIME
ค่าที่แสดงถึงการประทับเวลาเมื่อมีการสร้างเกิดขึ้น
ค่าที่เลือกโดยผู้ใช้อุปกรณ์ซึ่งระบุรันไทม์
การกำหนดค่าของบิลด์ ฟิลด์นี้ควรมีค่าใดค่าหนึ่ง
android.os.Build.TYPE
สอดคล้องกับการกำหนดค่ารันไทม์ Android ทั่วไปสามแบบ ได้แก่ "ผู้ใช้"
"userdebug" หรือ "eng"
ชื่อหรือ ID ผู้ใช้ของผู้ใช้ (หรือผู้ใช้อัตโนมัติ) ที่สร้าง
android.os.Build.USER
สร้าง. ไม่มีข้อกำหนดในรูปแบบเฉพาะของฟิลด์นี้
ยกเว้นว่าจะต้องไม่เป็นค่าว่างหรือสตริงว่าง ("")

3.2.3. ความเข้ากันได้ของเจตนา
Android ใช้ Intents เพื่อให้เกิดการผสานรวมระหว่างแอปพลิเคชันอย่างหลวมๆ ในส่วนนี้จะอธิบาย
ข้อกำหนดที่เกี่ยวข้องกับรูปแบบเจตนาที่ต้องได้รับจากการใช้งานอุปกรณ์ โดย
"ได้รับเกียรติ" หมายความว่าผู้ใช้อุปกรณ์จะต้องจัดเตรียมกิจกรรม Android บริการ หรืออื่นๆ
องค์ประกอบที่ระบุตัวกรอง Intent ที่ตรงกัน และเชื่อมโยงกับและใช้ลักษณะการทำงานที่ถูกต้องสำหรับแต่ละรายการ
รูปแบบเจตนารมณ์ที่กำหนด
3.2.3.1. จุดประสงค์หลักของแอปพลิเคชัน
โครงการอัปสตรีม Android กำหนดแอปพลิเคชันหลักจำนวนหนึ่ง เช่น โปรแกรมโทรออกโทรศัพท์ ปฏิทิน
สมุดรายชื่อ เครื่องเล่นเพลง และอื่นๆ ผู้ใช้อุปกรณ์อาจแทนที่แอปพลิเคชันเหล่านี้ด้วย
รุ่นทางเลือก
อย่างไรก็ตาม เวอร์ชันทางเลือกใดๆ ดังกล่าวจะต้องเป็นไปตามรูปแบบ Intent เดียวกันที่อัปสตรีมจัดทำไว้
โครงการ. (เช่น หากอุปกรณ์มีเครื่องเล่นเพลงสำรอง อุปกรณ์นั้นจะต้องยังคงยึดตามรูปแบบ Intent
ออกโดยแอปพลิเคชันบุคคลที่สามเพื่อเลือกเพลง) การใช้งานอุปกรณ์ต้องรองรับรูปแบบ Intent ทั้งหมด
ระบุไว้ในภาคผนวก A
3.2.3.2. การแทนที่เจตนา
เนื่องจาก Android เป็นแพลตฟอร์มที่ขยายได้ ผู้ใช้อุปกรณ์จึงต้องอนุญาตรูปแบบ Intent แต่ละรูปแบบที่อธิบายไว้ในนั้น
ภาคผนวก A จะถูกแทนที่โดยแอปพลิเคชันบุคคลที่สาม โครงการโอเพ่นซอร์ส Android อัปสตรีม
อนุญาตสิ่งนี้ตามค่าเริ่มต้น ผู้ใช้อุปกรณ์จะต้องไม่แนบสิทธิพิเศษกับแอปพลิเคชันระบบ
การใช้รูปแบบเจตนาเหล่านี้ หรือป้องกันไม่ให้แอปพลิเคชันของบุคคลที่สามผูกมัดและเข้าควบคุม
รูปแบบเหล่านี้ ข้อห้ามนี้รวมถึงการปิดการใช้งานอินเทอร์เฟซผู้ใช้ "ตัวเลือก" โดยเฉพาะซึ่งอนุญาต
ผู้ใช้สามารถเลือกระหว่างหลายแอปพลิเคชันซึ่งทั้งหมดจัดการรูปแบบ Intent เดียวกัน
3.2.3.3. เนมสเปซเจตนา
ผู้ติดตั้งอุปกรณ์จะต้องไม่รวมส่วนประกอบ Android ใด ๆ ที่ให้เกียรติกับเจตนาใหม่หรือ
รูปแบบการถ่ายทอดเจตนาโดยใช้ ACTION, CATEGORY หรือสตริงคีย์อื่นๆ ในเนมสเปซ android.*
ผู้ติดตั้งอุปกรณ์จะต้องไม่รวมส่วนประกอบ Android ใด ๆ ที่ให้เกียรติกับเจตนาใหม่หรือ
รูปแบบ Broadcast Intent โดยใช้ ACTION, CATEGORY หรือคีย์สตริงอื่นๆ ในพื้นที่แพ็กเกจ
ที่เป็นขององค์กรอื่น ผู้ใช้อุปกรณ์จะต้องไม่เปลี่ยนแปลงหรือขยายเจตจำนงใดๆ
รูปแบบที่ระบุไว้ในภาคผนวก A หรือ B
ข้อห้ามนี้จะคล้ายคลึงกับที่ระบุไว้สำหรับคลาสภาษา Java ในส่วนที่ 3.6

3.2.3.4. ความตั้งใจในการออกอากาศ
แอปพลิเคชันของบุคคลที่สามอาศัยแพลตฟอร์มในการถ่ายทอดเจตนาบางอย่างเพื่อแจ้งให้ทราบถึงการเปลี่ยนแปลงใน
สภาพแวดล้อมของฮาร์ดแวร์หรือซอฟต์แวร์ อุปกรณ์ที่รองรับ Android จะต้องออกอากาศการออกอากาศสาธารณะ
เจตนาในการตอบสนองต่อเหตุการณ์ของระบบที่เหมาะสม รายการความตั้งใจในการออกอากาศที่จำเป็นมีอยู่ใน
ภาคผนวก ข; อย่างไรก็ตาม โปรดทราบว่า SDK อาจกำหนดจุดประสงค์ในการออกอากาศเพิ่มเติม ซึ่งจะต้องกำหนดเช่นกัน
ได้รับเกียรติ
3.3. ความเข้ากันได้ของ API ดั้งเดิม
รหัสที่ได้รับการจัดการที่ทำงานใน Dalvik สามารถเรียกใช้รหัสเนทิฟที่ให้ไว้ในไฟล์ .apk ของแอปพลิเคชันเป็น ELF
ไฟล์ .so ที่คอมไพล์สำหรับสถาปัตยกรรมฮาร์ดแวร์อุปกรณ์ที่เหมาะสม การใช้งานอุปกรณ์ต้องประกอบด้วย
รองรับโค้ดที่ทำงานในสภาพแวดล้อมที่มีการจัดการเพื่อเรียกใช้โค้ดเนทีฟโดยใช้ Java มาตรฐาน
ซีแมนทิกส์ Native Interface (JNI) API ต่อไปนี้ต้องใช้ได้กับโค้ดเนทีฟ:
libc (ไลบรารี C)
libm (ห้องสมุดคณิตศาสตร์)
อินเตอร์เฟซ JNI
libz (การบีบอัด Zlib)
liblog (การบันทึก Android)
การสนับสนุนขั้นต่ำสำหรับ C ++
OpenGL ES 1.1
ไลบรารีเหล่านี้จะต้องเข้ากันได้กับแหล่งที่มา (เช่น เข้ากันได้กับส่วนหัว) และเข้ากันได้กับไบนารี (สำหรับไฟล์ที่กำหนด
สถาปัตยกรรมโปรเซสเซอร์) ด้วยเวอร์ชันที่มีให้ใน Bionic โดยโครงการ Android Open Source เนื่องจาก
การใช้งาน Bionic ไม่สามารถใช้งานร่วมกับการใช้งานอื่น ๆ เช่น GNU C ได้อย่างสมบูรณ์
ไลบรารี ผู้ใช้อุปกรณ์ควรใช้การใช้งาน Android หากผู้ติดตั้งอุปกรณ์ใช้ไฟล์
การใช้งานไลบรารีเหล่านี้ที่แตกต่างกัน จะต้องรับประกันความเข้ากันได้ของส่วนหัวและไบนารี
ความเข้ากันได้ของโค้ดเนทีฟเป็นสิ่งที่ท้าทาย ด้วยเหตุผลนี้ เราจึงขอย้ำอีกครั้งว่าผู้ติดตั้งอุปกรณ์นั้นคือ
ขอแนะนำอย่างยิ่งให้ใช้การใช้งานอัปสตรีมของไลบรารีที่ระบุไว้ข้างต้นเพื่อช่วย
รับรองความเข้ากันได้
3.4. ความเข้ากันได้ของเว็บ API
นักพัฒนาและแอปพลิเคชันจำนวนมากอาศัยพฤติกรรมของคลาส android.webkit.WebView [ แหล่งข้อมูล ,
11] สำหรับอินเทอร์เฟซผู้ใช้ ดังนั้นการใช้งาน WebView จะต้องเข้ากันได้บน Android
การใช้งาน การใช้งาน Android Open Source ใช้เวอร์ชันเอ็นจิ้นการเรนเดอร์ WebKit
ติดตั้ง WebView
เนื่องจากเป็นไปไม่ได้ที่จะพัฒนาชุดทดสอบที่ครอบคลุมสำหรับเว็บเบราว์เซอร์ ผู้ใช้งานอุปกรณ์
ต้องใช้อัพสตรีมบิวด์เฉพาะของ WebKit ในการใช้งาน WebView โดยเฉพาะ:
• WebView ต้องใช้โครงสร้าง WebKit 528.5+ จากแผนผังโอเพ่นซอร์ส Android อัปสตรีม
แอนดรอยด์ 1.6 โครงสร้างนี้มีชุดฟังก์ชันการทำงานและการแก้ไขความปลอดภัยเฉพาะสำหรับ WebView
• สตริงตัวแทนผู้ใช้ที่รายงานโดย WebView ต้องอยู่ในรูปแบบนี้:
Mozilla/5.0 (Linux; U; Android 1.6; <ภาษา>-<ประเทศ>; <อุปกรณ์
ชื่อ>; Build/<build ID>) AppleWebKit/528.5+ (KHTML เช่น Gecko)
เวอร์ชัน/3.1.2 มือถือ Safari/525.20.1

◦ สตริง "<ชื่ออุปกรณ์>" จะต้องเหมือนกับค่าสำหรับ
android.os.Build.MODEL
◦ สตริง "<build ID>" จะต้องเหมือนกับค่าสำหรับ android.os.Build.ID
◦ สตริง "<ภาษา>" และ "<ประเทศ>" ควรเป็นไปตามแบบแผนปกติ
รหัสประเทศและภาษา และควรอ้างอิงถึงสถานที่ปัจจุบันของอุปกรณ์ที่
เวลาของการร้องขอ
การใช้งานอาจจัดส่งสตริงตัวแทนผู้ใช้ที่กำหนดเองในแอปพลิเคชันเบราว์เซอร์แบบสแตนด์อโลน มีอะไร.
ยิ่งไปกว่านั้น เบราว์เซอร์แบบสแตนด์อโลนอาจใช้เทคโนโลยีเบราว์เซอร์สำรอง (เช่น Firefox
Opera ฯลฯ) อย่างไรก็ตาม แม้ว่าจะมีการจัดส่งแอปพลิเคชันเบราว์เซอร์สำรอง คอมโพเนนต์ WebView ก็ตาม
ที่ให้ไว้กับแอปพลิเคชันบุคคลที่สามจะต้องใช้ WebKit ดังที่กล่าวข้างต้น
แอปพลิเคชันเบราว์เซอร์แบบสแตนด์อโลนควรรองรับ Gears [ Resources, 12] และ MAY
รวมการสนับสนุน HTML5 บางส่วนหรือทั้งหมด
3.5. ความเข้ากันได้ของพฤติกรรม API
ลักษณะการทำงานของ API แต่ละประเภท (ที่ได้รับการจัดการ, Soft, Native และ Web) จะต้องสอดคล้องกับ
การใช้งาน Android ที่ต้องการจากโครงการ Android Open Source
ความเข้ากันได้เฉพาะด้านได้แก่:
• อุปกรณ์จะต้องไม่เปลี่ยนพฤติกรรมหรือความหมายของเจตนามาตรฐาน
• อุปกรณ์จะต้องไม่เปลี่ยนแปลงวงจรการใช้งานหรือความหมายของวงจรการใช้งานของระบบบางประเภทโดยเฉพาะ
ส่วนประกอบ (เช่น บริการ กิจกรรม ContentProvider ฯลฯ)
• อุปกรณ์จะต้องไม่เปลี่ยนความหมายของการอนุญาตเฉพาะ
รายการข้างต้นไม่ครอบคลุมทั้งหมด และความรับผิดชอบอยู่ที่ผู้ติดตั้งอุปกรณ์เพื่อให้แน่ใจว่ามีพฤติกรรม
ความเข้ากันได้ ด้วยเหตุนี้ ผู้ใช้อุปกรณ์จึงควรใช้ซอร์สโค้ดที่มีอยู่ผ่านทาง
โครงการ Android Open Source หากเป็นไปได้ แทนที่จะปรับใช้ส่วนสำคัญของระบบอีกครั้ง
ชุดทดสอบความเข้ากันได้ (CTS) ทดสอบส่วนสำคัญของแพลตฟอร์มสำหรับความเข้ากันได้ทางพฤติกรรม
แต่ไม่ใช่ทั้งหมด เป็นความรับผิดชอบของผู้ดำเนินการในการตรวจสอบความเข้ากันได้ทางพฤติกรรมกับ Android
โครงการโอเพ่นซอร์ส
3.6. เนมสเปซ API
Android เป็นไปตามแบบแผนเนมสเปซแพ็คเกจและคลาสที่กำหนดโดยการเขียนโปรแกรม Java
ภาษา. เพื่อให้มั่นใจว่าสามารถใช้งานร่วมกับแอปพลิเคชันบุคคลที่สามได้ ผู้ติดตั้งอุปกรณ์จะต้องไม่สร้าง
การแก้ไขที่ต้องห้ามใด ๆ (ดูด้านล่าง) ในเนมสเปซแพ็คเกจเหล่านี้:
• ชวา.*
• จาวาเอ็กซ์.*
• ดวงอาทิตย์.*
• หุ่นยนต์.*
• com.android.*
การแก้ไขที่ต้องห้ามได้แก่:
• การใช้งานอุปกรณ์จะต้องไม่แก้ไข API ที่เปิดเผยต่อสาธารณะบนแพลตฟอร์ม Android
โดยการเปลี่ยนวิธีการหรือลายเซ็นคลาสใด ๆ หรือโดยการลบคลาสหรือฟิลด์คลาส

• ผู้ใช้งานอุปกรณ์อาจแก้ไขการใช้งานพื้นฐานของ API แต่เป็นเช่นนั้น
การแก้ไขจะต้องไม่ส่งผลกระทบต่อพฤติกรรมที่ระบุไว้และลายเซ็นภาษา Java ใด ๆ
API ที่เปิดเผยต่อสาธารณะ
• ผู้ใช้อุปกรณ์ต้องไม่เพิ่มองค์ประกอบที่เปิดเผยต่อสาธารณะ (เช่น คลาสหรือ
อินเทอร์เฟซหรือฟิลด์หรือวิธีการไปยังคลาสหรืออินเทอร์เฟซที่มีอยู่) กับ API ข้างต้น
"องค์ประกอบที่เปิดเผยต่อสาธารณะ" คือโครงสร้างใดๆ ที่ไม่ได้ตกแต่งด้วยเครื่องหมาย "@hide" ใน
ซอร์สโค้ด Android อัปสตรีม กล่าวอีกนัยหนึ่ง ผู้ใช้งานอุปกรณ์จะต้องไม่เปิดเผย API ใหม่หรือ
แก้ไข API ที่มีอยู่ในเนมสเปซที่ระบุไว้ข้างต้น ผู้ใช้อุปกรณ์อาจสร้างเฉพาะภายในเท่านั้น
การแก้ไข แต่การแก้ไขเหล่านั้นจะต้องไม่ได้รับการโฆษณาหรือเปิดเผยต่อนักพัฒนา
ผู้ใช้อุปกรณ์อาจเพิ่ม API ที่กำหนดเอง แต่ API ดังกล่าวจะต้องไม่อยู่ในเนมสเปซที่เป็นเจ้าของ
โดยหรืออ้างถึงองค์กรอื่น ตัวอย่างเช่น ผู้ติดตั้งอุปกรณ์ต้องไม่เพิ่ม API ลงใน
com.google.* หรือเนมสเปซที่คล้ายกัน มีเพียง Google เท่านั้นที่สามารถทำได้ ในทำนองเดียวกัน Google จะต้องไม่เพิ่ม API เข้าไป
เนมสเปซของบริษัทอื่นๆ
หากผู้ดำเนินการอุปกรณ์เสนอให้ปรับปรุงเนมสเปซแพ็คเกจตัวใดตัวหนึ่งข้างต้น (เช่นโดยการเพิ่ม
ฟังก์ชันการทำงานใหม่ที่เป็นประโยชน์สำหรับ API ที่มีอยู่ หรือการเพิ่ม API ใหม่) ผู้ดำเนินการควรเยี่ยมชม
source.android.com และเริ่มกระบวนการสนับสนุนการเปลี่ยนแปลงและโค้ดตาม
ข้อมูลบนเว็บไซต์นั้น
โปรดทราบว่าข้อจำกัดข้างต้นสอดคล้องกับแบบแผนมาตรฐานสำหรับการตั้งชื่อ API ใน Java
ภาษาโปรแกรม ส่วนนี้มีจุดมุ่งหมายเพื่อเสริมสร้างแบบแผนเหล่านั้นและทำให้พวกเขามีผลผูกพัน
ผ่านการรวมอยู่ในคำจำกัดความความเข้ากันได้นี้
3.7. ความเข้ากันได้ของเครื่องเสมือน
อุปกรณ์ Android ที่รองรับจะต้องรองรับข้อกำหนดไบต์โค้ด Dalvik Executable (DEX) แบบเต็มและ
ซีแมนทิกส์ Dalvik Virtual Machine [แหล่งข้อมูล, 13]
3.8. ความเข้ากันได้ของส่วนต่อประสานผู้ใช้
แพลตฟอร์ม Android มี API สำหรับนักพัฒนาบางตัวที่ช่วยให้นักพัฒนาสามารถเชื่อมต่อกับผู้ใช้ระบบได้
อินเตอร์เฟซ. การใช้งานอุปกรณ์ต้องรวม UI API มาตรฐานเหล่านี้เข้ากับอินเทอร์เฟซผู้ใช้ที่กำหนดเอง
พวกเขาพัฒนาตามที่อธิบายไว้ด้านล่าง
3.8.1. วิดเจ็ต
Android กำหนดประเภทส่วนประกอบและ API และวงจรการใช้งานที่เกี่ยวข้องซึ่งอนุญาตให้แอปพลิเคชันเปิดเผย
"AppWidget" ให้กับผู้ใช้ปลายทาง [Resources , 14] รุ่นอ้างอิง Android Open Source ประกอบด้วย
แอปพลิเคชัน Launcher ที่มีองค์ประกอบอินเทอร์เฟซผู้ใช้ที่อนุญาตให้ผู้ใช้เพิ่ม ดู และลบได้
AppWidgets จากหน้าจอหลัก
ผู้ใช้อุปกรณ์อาจใช้ทางเลือกอื่นแทน Launcher อ้างอิง (เช่น หน้าจอหลัก)
ตัวเรียกใช้งานทางเลือกควรมีการรองรับ AppWidgets ในตัว และแสดงส่วนต่อประสานกับผู้ใช้
องค์ประกอบเพื่อเพิ่ม ดู และลบ AppWidgets โดยตรงภายใน Launcher ตัวเรียกใช้ทางเลือกอาจ
ละเว้นองค์ประกอบอินเทอร์เฟซผู้ใช้เหล่านี้ อย่างไรก็ตาม หากละไว้ ผู้ดำเนินการอุปกรณ์จะต้องจัดเตรียม
แอปพลิเคชันแยกต่างหากที่สามารถเข้าถึงได้จาก Launcher ที่อนุญาตให้ผู้ใช้เพิ่ม ดู และลบ
แอพวิดเจ็ต

3.8.2. การแจ้งเตือน
Android มี API ที่ช่วยให้นักพัฒนาสามารถแจ้งผู้ใช้เกี่ยวกับเหตุการณ์สำคัญได้ [แหล่งข้อมูล, 15] อุปกรณ์
ผู้ดำเนินการจะต้องให้การสนับสนุนการแจ้งเตือนแต่ละประเภทตามที่กำหนดไว้ โดยเฉพาะ: เสียง,
การสั่นสะเทือน แสง และแถบสถานะ
นอกจากนี้ การใช้งานต้องแสดงผลอย่างถูกต้องและทรัพยากรทั้งหมด (ไอคอน ไฟล์เสียง ฯลฯ)
ระบุไว้ใน APIs [Resources, 7] หรือใน คำแนะนำสไตล์ไอคอนแถบสถานะ [Resources , 16] อุปกรณ์
ผู้ดำเนินการอาจมอบประสบการณ์ผู้ใช้ทางเลือกสำหรับการแจ้งเตือนมากกว่าที่มอบให้โดย
อ้างอิงการใช้งาน Android Open Source; อย่างไรก็ตามระบบการแจ้งเตือนทางเลือกดังกล่าวจะต้อง
สนับสนุนทรัพยากรการแจ้งเตือนที่มีอยู่ดังที่กล่าวข้างต้น
3.8.3. ค้นหา
Android มี API [แหล่งข้อมูล 17] ที่ช่วยให้นักพัฒนาสามารถรวมการค้นหาเข้ากับแอปพลิเคชันของตนได้
และเปิดเผยข้อมูลแอปพลิเคชันของตนในการค้นหาระบบทั่วโลก โดยทั่วไปแล้วฟังก์ชั่นนี้
ประกอบด้วยอินเทอร์เฟซผู้ใช้ทั้งระบบเดียวที่ให้ผู้ใช้สามารถป้อนคำถาม แสดงคำแนะนำได้
ขณะที่ผู้ใช้พิมพ์ และแสดงผลลัพธ์ Android API ช่วยให้นักพัฒนาสามารถใช้อินเทอร์เฟซนี้ซ้ำได้
ค้นหาภายในแอปของตนเอง และอนุญาตให้นักพัฒนาจัดหาผลลัพธ์ให้กับผู้ใช้การค้นหาทั่วโลกทั่วไป
อินเตอร์เฟซ.
การใช้งานอุปกรณ์ต้องมีอินเทอร์เฟซผู้ใช้การค้นหาทั่วทั้งระบบเดียวที่สามารถใช้งานได้
ข้อเสนอแนะแบบเรียลไทม์เพื่อตอบสนองต่อการป้อนข้อมูลของผู้ใช้ การใช้งานอุปกรณ์ต้องใช้ API นั้น
อนุญาตให้นักพัฒนาใช้อินเทอร์เฟซผู้ใช้นี้ซ้ำเพื่อทำการค้นหาภายในแอปพลิเคชันของตนเอง
การใช้งานอุปกรณ์ต้องใช้ API ที่อนุญาตให้แอปพลิเคชันบุคคลที่สามเพิ่มคำแนะนำ
ไปที่ช่องค้นหาเมื่อทำงานในโหมดค้นหาทั่วโลก หากไม่มีการติดตั้งแอปพลิเคชันบุคคลที่สามนั้น
ใช้ประโยชน์จากฟังก์ชันนี้ พฤติกรรมเริ่มต้นควรเป็นการแสดงผลลัพธ์ของเครื่องมือค้นหาเว็บและ
ข้อเสนอแนะ
การใช้งานอุปกรณ์อาจจัดส่งอินเทอร์เฟซผู้ใช้การค้นหาแบบอื่น แต่ควรมีแบบแข็งหรือแบบอ่อน
ปุ่มค้นหาเฉพาะที่สามารถใช้งานได้ตลอดเวลาภายในแอปใดก็ได้เพื่อเรียกใช้กรอบการค้นหา
ด้วยลักษณะการทำงานที่ระบุไว้ในเอกสารประกอบ API
3.8.4. ขนมปังปิ้ง
แอปพลิเคชันสามารถใช้ "Toast" API (กำหนดไว้ใน [ แหล่งข้อมูล, 18]) เพื่อแสดงสตริงที่ไม่ใช่กิริยาแบบสั้นไปยัง
ผู้ใช้ปลายทางที่หายไปหลังจากช่วงระยะเวลาสั้นๆ การใช้งานอุปกรณ์ต้องแสดง Toasts จาก
แอปพลิเคชันไปยังผู้ใช้ในลักษณะที่มีการมองเห็นสูง
4. ความเข้ากันได้ของซอฟต์แวร์อ้างอิง
ผู้ติดตั้งอุปกรณ์ต้องทดสอบความเข้ากันได้ในการใช้งานโดยใช้โอเพ่นซอร์สต่อไปนี้
การใช้งาน:
• เครื่องคิดเลข (รวมอยู่ใน SDK)
• Lunar Lander (รวมอยู่ใน SDK)
• ApiDemos (รวมอยู่ใน SDK)
• แอปพลิเคชัน "แอปสำหรับ Android" [ แหล่งข้อมูล, 19]
แต่ละแอปข้างต้นจะต้องเปิดใช้งานและทำงานอย่างถูกต้องในการใช้งานจึงจะสามารถใช้งานได้

ถือว่าเข้ากันได้
5. ความเข้ากันได้ของบรรจุภัณฑ์ของแอปพลิเคชัน
การใช้งานอุปกรณ์จะต้องติดตั้งและเรียกใช้ไฟล์ ".apk" ของ Android ที่สร้างโดยเครื่องมือ "aapt"
รวมอยู่ใน Android SDK อย่างเป็นทางการ [ ทรัพยากร , 20]
การใช้งานอุปกรณ์จะต้องไม่ขยายทั้ง. APK, Android Manifest หรือ Dalvik bytecode
รูปแบบในลักษณะที่จะป้องกันไม่ให้ไฟล์เหล่านั้นติดตั้งและรันอย่างถูกต้อง
อุปกรณ์ที่เข้ากันได้ ผู้ใช้อุปกรณ์ควรใช้การใช้งานการอ้างอิงต้นน้ำของ Dalvik
และระบบการจัดการแพ็คเกจของการใช้งานอ้างอิง
6. ความเข้ากันได้ของมัลติมีเดีย
อุปกรณ์ Android ที่เข้ากันได้จะต้องรองรับตัวแปลงสัญญาณมัลติมีเดียต่อไปนี้ ตัวแปลงสัญญาณทั้งหมดเหล่านี้คือ
มีการใช้งานซอฟต์แวร์ในการใช้งาน Android ที่ต้องการจาก Android Open
โครงการแหล่งที่มา [ ทรัพยากร , 4]
โปรดทราบว่าทั้ง Google และพันธมิตรโทรศัพท์มือถือแบบเปิดไม่ได้เป็นตัวแทนใด ๆ ที่สิ่งเหล่านี้
ตัวแปลงสัญญาณไม่มีภาระผูกพันโดยสิทธิบัตรของบุคคลที่สาม ผู้ที่ตั้งใจจะใช้ซอร์สโค้ดนี้ในฮาร์ดแวร์หรือ
แนะนำให้ใช้ผลิตภัณฑ์ซอฟต์แวร์ว่าการใช้งานรหัสนี้รวมถึงในซอฟต์แวร์โอเพนซอร์สหรือ
Shareware อาจต้องใช้ใบอนุญาตสิทธิบัตรจากผู้ถือสิทธิบัตรที่เกี่ยวข้อง
เสียง
ชื่อ

รายละเอียดตัวถอดรหัส
ไฟล์ที่รองรับ
เนื้อหาโมโน/สเตอริโอในใด ๆ
3GPP (.3GP) และ
การรวมกันของอัตราบิตมาตรฐาน
MPEG-4 (.MP4, .M4A)
AAC LC/LTP
เอ็กซ์
ไฟล์อัตราการสุ่มตัวอย่างสูงถึง 160 kbps และอัตราการสุ่มตัวอย่าง ไม่สนับสนุนดิบ
ระหว่าง 8 ถึง 48kHz
AAC (.AAC)
เนื้อหาโมโน/สเตอริโอในใด ๆ
3GPP (.3GP) และ
HE-AACV1
การรวมกันของอัตราบิตมาตรฐาน
MPEG-4 (.MP4, .M4A)
เอ็กซ์
(AAC+)
ไฟล์อัตราการสุ่มตัวอย่างสูงถึง 96 kbps และการสุ่มตัวอย่าง ไม่สนับสนุนดิบ
ระหว่าง 8 ถึง 48kHz
AAC (.AAC)
เนื้อหาโมโน/สเตอริโอในใด ๆ
HE-AACV2
3GPP (.3GP) และ
การรวมกันของอัตราบิตมาตรฐาน
(ปรับปรุง
MPEG-4 (.MP4, .M4A)
เอ็กซ์
สูงถึง 96 kbps และอัตราการสุ่มตัวอย่าง
AAC+)
ไฟล์. ไม่สนับสนุนดิบ
ระหว่าง 8 ถึง 48kHz
AAC (.AAC)
AMR-NB
4.75 ถึง 12.2 kbps ตัวอย่าง @
ไฟล์ 3GPP (.3GP)
เอ็กซ์
เอ็กซ์
8kHz
AMR-WB
9 อัตราจาก 6.60 kbit/s ถึง 23.85
ไฟล์ -3GPP (.3GP)
เอ็กซ์
ตัวอย่าง kbit/s @ 16kHz
เอ็มพี3
ไฟล์ Mono/Stereo 8-320Kbps ค่าคงที่ mp3 (.mp3) ไฟล์
เอ็กซ์
(CBR) หรืออัตราบิตตัวแปร (VBR)
พิมพ์ 0 และ 1 (.mid, .xmf,
MIDI Type 0 และ 1 DLS เวอร์ชัน 1
MIDI
เอ็กซ์
.MXMF) ยัง RTTTL/RTX
และ 2. XMF และ Mobile XMF
(.rtttl, .rtx), OTA (.OTA),

สนับสนุนรูปแบบเสียงเรียกเข้า
และ Imelody (.Imy)
rtttl/rtx, ota และ imelody
Ogg Vorbis
. OGG
เอ็กซ์
PCM เชิงเส้น 8- และ 16 บิต (อัตราเพิ่มขึ้น
PCM
เอ็กซ์
คลื่น
เพื่อ จำกัด ฮาร์ดแวร์)
ภาพ
ไฟล์
ชื่อ
รายละเอียดตัวถอดรหัส
ได้รับการสนับสนุน
เจเพ็ก
เอ็กซ์
เอ็กซ์
ฐาน+ก้าวหน้า
กิฟ
เอ็กซ์
PNG
เอ็กซ์
เอ็กซ์
BMP
เอ็กซ์
วีดีโอ
ไฟล์
ชื่อ
รายละเอียดตัวถอดรหัส
ได้รับการสนับสนุน
3GPP (.3GP)
H.263
เอ็กซ์
เอ็กซ์
ไฟล์
3GPP (.3GP)
H.264
เอ็กซ์
และ MPEG-4
ไฟล์ (.mp4)
MPEG4
เอ็กซ์
ไฟล์ 3GPP (.3GP)
เอสพี
7. ความเข้ากันได้ของเครื่องมือนักพัฒนา
การใช้งานอุปกรณ์จะต้องรองรับเครื่องมือนักพัฒนา Android ที่มีให้ใน Android SDK
โดยเฉพาะอุปกรณ์ที่เข้ากันได้กับ Android จะต้องเข้ากันได้กับ:
สะพาน Android Debug หรือ ADB [ทรัพยากร , 21]
การใช้งานอุปกรณ์จะต้องรองรับฟังก์ชั่น ADB ทั้งหมดตามที่บันทึกไว้ใน Android
SDK ADB daemon ด้านอุปกรณ์ควรไม่ทำงานโดยค่าเริ่มต้น แต่ต้องมีผู้ใช้-
กลไกที่สามารถเข้าถึงได้เพื่อเปิดสะพาน Android Debug
บริการตรวจสอบ Dalvik Debug หรือ DDMS [ทรัพยากร , 22]
การใช้งานอุปกรณ์จะต้องรองรับคุณสมบัติ DDMS ทั้งหมดตามที่บันทึกไว้ใน Android SDK
เนื่องจาก DDMS ใช้ ADB การสนับสนุน DDMS ควรไม่ทำงานโดยค่าเริ่มต้น แต่ต้องได้รับการสนับสนุน
เมื่อใดก็ตามที่ผู้ใช้เปิดใช้งานสะพาน Android Debug ดังที่กล่าวไว้ข้างต้น

ลิง [ทรัพยากร 23]
การใช้งานอุปกรณ์จะต้องมีกรอบ Monkey และทำให้พร้อมใช้งาน
แอปพลิเคชันที่จะใช้
8. ความเข้ากันได้ของฮาร์ดแวร์
Android มีวัตถุประสงค์เพื่อสนับสนุนผู้ใช้อุปกรณ์สร้างปัจจัยและการกำหนดค่าฟอร์มที่เป็นนวัตกรรม
ในเวลาเดียวกันนักพัฒนา Android คาดหวังว่าจะมีฮาร์ดแวร์เซ็นเซอร์และ APIs ใน Android ทั้งหมด
อุปกรณ์. ส่วนนี้แสดงคุณสมบัติฮาร์ดแวร์ที่อุปกรณ์ที่เข้ากันได้กับ Android 1.6 ทั้งหมดจะต้องรองรับ ใน
Android 1.6 จำเป็นต้องใช้คุณสมบัติฮาร์ดแวร์ส่วนใหญ่ (เช่น WiFi, Compass และ Accelerometer)
หากอุปกรณ์มีส่วนประกอบฮาร์ดแวร์เฉพาะที่มี API ที่สอดคล้องกันสำหรับบุคคลที่สาม
นักพัฒนาการใช้งานอุปกรณ์จะต้องใช้ API นั้นตามที่กำหนดไว้ใน Android SDK
เอกสารประกอบ
8.1. แสดง
Android 1.6 รวมถึงสิ่งอำนวยความสะดวกที่ดำเนินการปรับขนาดและการเปลี่ยนแปลงอัตโนมัติบางอย่างภายใต้
บางสถานการณ์เพื่อให้แน่ใจว่าแอปพลิเคชันของบุคคลที่สามทำงานได้ดีพอสมควรกับฮาร์ดแวร์
การกำหนดค่าที่ไม่จำเป็นต้องได้รับการออกแบบอย่างชัดเจน [ทรัพยากร, 24] อุปกรณ์ต้อง
ใช้พฤติกรรมเหล่านี้อย่างถูกต้องตามรายละเอียดในส่วนนี้
8.1.1. การกำหนดค่าการแสดงผลมาตรฐาน
ตารางนี้แสดงการกำหนดค่าหน้าจอมาตรฐานที่พิจารณาเข้ากันได้กับ Android:
เส้นทแยงมุม
ขนาดหน้าจอ
ความหนาแน่นของหน้าจอ
ประเภทหน้าจอ
ความกว้าง (พิกเซล)
ความสูง (พิกเซล)
ช่วงความยาว
กลุ่ม
กลุ่ม
(นิ้ว)
QVGA
240
320
2.6 - 3.0
เล็ก
ต่ำ
WQVGA
240
400
3.2 - 3.5
ปกติ
ต่ำ
FWQVGA
240
432
3.5 - 3.8
ปกติ
ต่ำ
เอชวีจีเอ
320
480
3.0 - 3.5
ปกติ
ปานกลาง
WVGA
480
800
3.3 - 4.0
ปกติ
สูง
FWVGA
480
854
3.5 - 4.0
ปกติ
สูง
WVGA
480
800
4.8 - 5.5
ใหญ่
ปานกลาง
FWVGA
480
854
5.0 - 5.8
ใหญ่
ปานกลาง
การใช้งานอุปกรณ์ที่สอดคล้องกับหนึ่งในการกำหนดค่ามาตรฐานด้านบนจะต้องกำหนดค่า
เพื่อรายงานขนาดหน้าจอที่ระบุไปยังแอปพลิเคชันผ่าน Android.content.res.configuration [ ทรัพยากร,
25] คลาส
แพ็คเกจ. APK บางตัวมีการปรากฏตัวที่ไม่ได้ระบุว่าเป็นช่วงความหนาแน่นที่เฉพาะเจาะจง
เมื่อเรียกใช้แอปพลิเคชันดังกล่าวจะใช้ข้อ จำกัด ต่อไปนี้:

•การใช้งานอุปกรณ์จะต้องตีความทรัพยากรใด ๆ ที่มีอยู่เป็นการผิดนัด
"Medium" (เรียกว่า "MDPI" ในเอกสาร SDK)
•เมื่อทำงานบนหน้าจอความหนาแน่น "ต่ำ" การใช้งานอุปกรณ์จะต้องลดขนาดกลาง/
สินทรัพย์ MDPI โดยปัจจัย 0.75
•เมื่อทำงานบนหน้าจอความหนาแน่น "สูง" การใช้งานอุปกรณ์จะต้องขยายขนาดกลาง/
สินทรัพย์ MDPI โดยปัจจัย 1.5
•การใช้งานอุปกรณ์จะต้องไม่ปรับขนาดสินทรัพย์ภายในช่วงความหนาแน่นและต้องปรับขนาด
สินทรัพย์โดยปัจจัยเหล่านี้ระหว่างช่วงความหนาแน่น
8.1.2. การกำหนดค่าการแสดงผลที่ไม่ได้มาตรฐาน
แสดงการกำหนดค่าที่ไม่ตรงกับหนึ่งในการกำหนดค่ามาตรฐานที่ระบุไว้ในส่วน 8.2.1 ต้องการ
การพิจารณาเพิ่มเติมและการทำงานที่เข้ากันได้ ผู้ใช้อุปกรณ์ต้องติดต่อ Android
ทีมงานที่เข้ากันได้ตามที่ระบุไว้ในส่วนที่ 12 เพื่อรับการจำแนกประเภทสำหรับถังขนาดหน้าจอความหนาแน่น
และปัจจัยการปรับขนาด เมื่อได้รับข้อมูลนี้การใช้งานอุปกรณ์จะต้องนำไปใช้
ตามที่ระบุไว้.
โปรดทราบว่าการกำหนดค่าการแสดงผลบางอย่าง (เช่นหน้าจอที่มีขนาดใหญ่มากหรือเล็กมากและอัตราส่วนบางส่วน)
ไม่สามารถใช้งานได้พื้นฐานกับ Android 1.6; ดังนั้นผู้ใช้อุปกรณ์จึงได้รับการสนับสนุนให้
ติดต่อทีมงานความเข้ากันได้ของ Android โดยเร็วที่สุดในกระบวนการพัฒนา
8.1.3. แสดงตัวชี้วัด
การใช้งานอุปกรณ์จะต้องรายงานค่าที่ถูกต้องสำหรับตัวชี้วัดที่แสดงทั้งหมดที่กำหนดไว้ใน
Android.util.displaymetrics [ทรัพยากร , 26]
8.2. คีย์บอร์ด
การใช้งานอุปกรณ์:
•ต้องรวมการสนับสนุนสำหรับกรอบการจัดการอินพุต (ซึ่งอนุญาตให้บุคคลที่สาม
นักพัฒนาเพื่อสร้างเอ็นจิ้นการจัดการอินพุต - IE Soft Keyboard) ตามรายละเอียดที่
นักพัฒนา
•ต้องจัดเตรียมการใช้แป้นพิมพ์แบบนุ่มอย่างน้อยหนึ่งครั้ง (ไม่ว่าจะเป็นเรื่องยาก
มีแป้นพิมพ์อยู่)
•อาจรวมถึงการใช้แป้นพิมพ์แบบนุ่มเพิ่มเติม
•อาจรวมถึงคีย์บอร์ดฮาร์ดแวร์
•ต้องไม่รวมแป้นพิมพ์ฮาร์ดแวร์ที่ไม่ตรงกับรูปแบบใดรูปแบบหนึ่งที่ระบุไว้
ใน Android.content.res.configuration [ ทรัพยากร, 25] (นั่นคือ qwerty หรือ 12-key)
8.3. การนำทางที่ไม่ใช่แบบสัมผัส
การใช้งานอุปกรณ์:
•อาจละเว้นตัวเลือกการนำทางที่ไม่ใช่แบบสัมผัส (นั่นคืออาจละเว้นแทร็กบอลแผ่นทิศทาง 5 ทิศทางหรือ
ล้อ)
•ต้องรายงานผ่าน Android.content.res.configuration [ทรัพยากร , 25] ค่าที่ถูกต้องสำหรับ
ฮาร์ดแวร์ของอุปกรณ์

8.4. การวางแนวหน้าจอ
อุปกรณ์ที่เข้ากันได้จะต้องรองรับการวางแนวแบบไดนามิกโดยแอปพลิเคชันไปยังแนวตั้งหรือภูมิทัศน์
การปฐมนิเทศหน้าจอ นั่นคืออุปกรณ์จะต้องเคารพคำขอของแอปพลิเคชันสำหรับหน้าจอเฉพาะ
ปฐมนิเทศ. การใช้งานอุปกรณ์อาจเลือกการวางแนวภาพบุคคลหรือแนวนอนเป็นค่าเริ่มต้น
อุปกรณ์จะต้องรายงานค่าที่ถูกต้องสำหรับการวางแนวปัจจุบันของอุปกรณ์เมื่อใดก็ตามที่สอบถามผ่าน
Android.content.res.configuration.orientation, Android.view.display.getOrientation () หรือ API อื่น ๆ
8.5. อินพุตหน้าจอสัมผัส
การใช้งานอุปกรณ์:
•ต้องมีหน้าจอสัมผัส
•อาจมีทั้งหน้าจอสัมผัสหรือตัวต้านทาน
•ต้องรายงานมูลค่าของ Android.content.res.configuration [ ทรัพยากร, 25] การสะท้อนกลับ
สอดคล้องกับประเภทของหน้าจอสัมผัสเฉพาะบนอุปกรณ์
8.6. ยูเอสบี
การใช้งานอุปกรณ์:
•ต้องใช้ไคลเอนต์ USB ที่เชื่อมต่อกับโฮสต์ USB ด้วยพอร์ต USB-A มาตรฐาน
•ต้องใช้สะพาน Debug Android ผ่าน USB (ตามที่อธิบายไว้ในส่วนที่ 7)
•ต้องใช้ไคลเอน
อุปกรณ์
•ควรใช้ตัวประกอบฟอร์ม Micro USB ที่ด้านอุปกรณ์
•ควรใช้การสนับสนุนสำหรับข้อกำหนดการจัดเก็บมวล USB (เพื่อให้สามารถถอดออกได้
หรือที่เก็บข้อมูลคงที่บนอุปกรณ์สามารถเข้าถึงได้จากพีซีโฮสต์)
•อาจรวมถึงพอร์ตที่ไม่ได้มาตรฐานในด้านอุปกรณ์ แต่ถ้าเป็นเช่นนั้นจะต้องจัดส่งด้วยสายเคเบิลที่สามารถ
การเชื่อมต่อ Pinout ที่กำหนดเองกับพอร์ต USB-A มาตรฐาน
8.7. กุญแจนำ
ฟังก์ชั่นบ้านเมนูและด้านหลังมีความสำคัญต่อกระบวนทัศน์การนำทาง Android อุปกรณ์
การใช้งานจะต้องทำให้ฟังก์ชั่นเหล่านี้พร้อมใช้งานสำหรับผู้ใช้ตลอดเวลาโดยไม่คำนึงถึงแอปพลิเคชัน
สถานะ. ฟังก์ชั่นเหล่านี้ควรใช้งานผ่านปุ่มเฉพาะ พวกเขาอาจถูกนำไปใช้
การใช้ซอฟต์แวร์ท่าทาง, แผงสัมผัส ฯลฯ แต่ถ้าเป็นเช่นนั้นจะต้องเข้าถึงได้เสมอและไม่ปิดบังหรือ
แทรกแซงพื้นที่แสดงแอปพลิเคชันที่มีอยู่
ผู้ใช้อุปกรณ์ควรจัดเตรียมคีย์การค้นหาเฉพาะ ผู้ใช้อุปกรณ์อาจ
ให้ปุ่มส่งและสิ้นสุดสำหรับการโทรศัพท์
8.8. อินเตอร์เน็ตไร้สาย
การใช้งานอุปกรณ์จะต้องรองรับ 802.11b และ 802.11g และอาจรองรับ 802.11a

8.9. กล้อง
การใช้งานอุปกรณ์จะต้องมีกล้อง กล้องที่รวมอยู่ด้วย:
•ต้องมีความละเอียดอย่างน้อย 2 ล้านพิกเซล
•ควรมีการโฟกัสอัตโนมัติฮาร์ดแวร์หรือซอฟต์แวร์โฟกัสอัตโนมัติที่ใช้ในกล้อง
ไดรเวอร์ (โปร่งใสไปยังซอฟต์แวร์แอปพลิเคชัน)
•อาจมีฮาร์ดแวร์แบบโฟกัสแบบคงที่หรือ EDOF (ความลึกของฟิลด์ขยาย)
•อาจรวมถึงแฟลช หากกล้องมีแฟลชไฟแฟลชจะต้องไม่สว่างในขณะที่
Android.hardware.camera.PreviewCallback อินสแตนซ์ได้รับการลงทะเบียนในตัวอย่างกล้อง
พื้นผิว.
การใช้งานอุปกรณ์จะต้องใช้พฤติกรรมต่อไปนี้สำหรับ API ที่เกี่ยวข้องกับกล้อง
[ทรัพยากร, 27] :
1. หากแอปพลิเคชันไม่เคยเรียก Android.hardware.camera.parameters.setPreviewFormat (int)
จากนั้นอุปกรณ์จะต้องใช้ Android.hardware.pixelformat.ycbcr_420_sp สำหรับข้อมูลตัวอย่าง
ให้กับแอปพลิเคชันโทรกลับ
2. หากแอปพลิเคชันลงทะเบียน Android.hardware.camera.previewCallback อินสแตนซ์และ
ระบบเรียกใช้เมธอด onpreviewFrame () เมื่อรูปแบบตัวอย่างคือ ycbcr_420_sp, the
ข้อมูลในไบต์ [] ที่ส่งผ่านไปยัง onPreviewFrame () จะต้องอยู่ในรูปแบบการเข้ารหัส NV21 เพิ่มเติม
(นี่คือรูปแบบที่ใช้โดยตระกูลฮาร์ดแวร์ 7K) นั่นคือ NV21 จะต้องเป็นค่าเริ่มต้น
8.9.1. กล้องที่ไม่ใช่ Autofocus
หากอุปกรณ์ขาดกล้องโฟกัสอัตโนมัติผู้ใช้อุปกรณ์จะต้องปฏิบัติตามข้อกำหนดเพิ่มเติมใน
ส่วนนี้ การใช้งานอุปกรณ์จะต้องใช้ API กล้องเต็มรูปแบบที่รวมอยู่ใน Android 1.6
เอกสาร SDK ในบางวิธีที่สมเหตุสมผลโดยไม่คำนึงถึงความสามารถของฮาร์ดแวร์กล้องจริง
สำหรับ Android 1.6 หากกล้องขาดโฟกัสอัตโนมัติการใช้งานอุปกรณ์จะต้องปฏิบัติตามต่อไปนี้:
1. ระบบจะต้องมีคุณสมบัติระบบแบบอ่านอย่างเดียวชื่อ "ro.workaround.noautofocus"
ด้วยค่าของ "1" ค่านี้มีวัตถุประสงค์เพื่อใช้โดยแอปพลิเคชันเช่นตลาด Android ถึง
เลือกระบุความสามารถของอุปกรณ์และจะถูกแทนที่ใน Android เวอร์ชันในอนาคตด้วย
API ที่แข็งแกร่ง
2. หากแอปพลิเคชันเรียก Android.hardware.camera.autofocus () ระบบจะต้องโทร
ONAUTOFOCUS () วิธีการโทรกลับในการลงทะเบียนใด ๆ
Android.hardware.camera.autofocuscallback อินสแตนซ์แม้ว่าจะไม่มีการโฟกัสจริง
เกิดขึ้น. นี่คือการหลีกเลี่ยงการมีแอปพลิเคชันที่มีอยู่หยุดโดยรอตลอดไปสำหรับการโฟกัสอัตโนมัติ
การโทรกลับที่จะไม่มีวันมา
3. การโทรไปยังวิธีการ Autofocuscallback.onautofocus () จะต้องถูกเรียกใช้โดยไดรเวอร์หรือ
เฟรมเวิร์กในเหตุการณ์ใหม่ในเธรด Main Framework Looper นั่นคือ camera.autofocus ()
ต้องไม่เรียก Autofocuscallback.onautofocus () โดยตรงเนื่องจากการละเมิด Android
โมเดลเกลียวเฟรมเวิร์กและจะทำลายแอพ
8.10. เครื่องเร่งความเร็ว
การใช้งานอุปกรณ์จะต้องมี accelerometer 3 แกนและจะต้องสามารถส่งมอบกิจกรรมได้ที่ AT
อย่างน้อย 50 Hz ระบบพิกัดที่ใช้โดย accelerometer ต้องปฏิบัติตามเซ็นเซอร์ Android
ระบบประสานงานตามรายละเอียดใน Android API S [ทรัพยากร , 28]

8.11. เข็มทิศ
การใช้งานอุปกรณ์จะต้องมีเข็มทิศ 3 แกนและจะต้องสามารถส่งมอบกิจกรรมได้อย่างน้อย
10 Hz ระบบพิกัดที่ใช้โดยเข็มทิศจะต้องปฏิบัติตามพิกัดเซ็นเซอร์ Android
ระบบตามที่กำหนดไว้ใน Android API [ทรัพยากร , 28]
8.12. จีพีเอส
การใช้งานอุปกรณ์จะต้องมี GPS และควรรวมบางรูปแบบของ "GPS ที่ได้รับความช่วยเหลือ"
เทคนิคเพื่อลดเวลาล็อค GPS
8.13. โทรศัพท์
การใช้งานอุปกรณ์:
•ต้องรวมโทรศัพท์ GSM หรือ CDMA
•ต้องใช้ API ที่เหมาะสมตามรายละเอียดในเอกสาร Android SDK ที่
นักพัฒนา
โปรดทราบว่าข้อกำหนดนี้แสดงให้เห็นว่าอุปกรณ์ที่ไม่ใช่โทรศัพท์ไม่สามารถใช้งานได้กับ Android 1.6 หุ่นยนต์
1.6 อุปกรณ์ต้องมีฮาร์ดแวร์โทรศัพท์ โปรดดูภาคผนวก C สำหรับข้อมูลที่ไม่ใช่โทรศัพท์
อุปกรณ์
8.14. การควบคุมระดับเสียง
อุปกรณ์ที่เข้ากันได้กับ Android จะต้องมีกลไกเพื่อให้ผู้ใช้สามารถเพิ่มและลด
ปริมาณเสียง การใช้งานอุปกรณ์จะต้องทำให้ฟังก์ชั่นเหล่านี้พร้อมใช้งานสำหรับผู้ใช้ตลอดเวลา
โดยไม่คำนึงถึงสถานะแอปพลิเคชัน ฟังก์ชั่นเหล่านี้อาจถูกนำมาใช้โดยใช้คีย์ฮาร์ดแวร์ทางกายภาพ
ซอฟต์แวร์ท่าทาง, แผงสัมผัส ฯลฯ แต่จะต้องสามารถเข้าถึงได้เสมอและไม่ปิดบังหรือแทรกแซง
ด้วยพื้นที่แสดงแอปพลิเคชันที่มีอยู่ (ดูที่แสดงด้านบน)
เมื่อใช้ปุ่มเหล่านี้จะต้องสร้างเหตุการณ์สำคัญที่เกี่ยวข้องและส่งไปยังไฟล์
แอปพลิเคชันเบื้องหน้า หากเหตุการณ์ไม่ได้ถูกดักจับและจมลงโดยแอปพลิเคชันแล้วอุปกรณ์
การใช้งานจะต้องจัดการกับเหตุการณ์เป็นการควบคุมระดับเสียงของระบบ
9. ความเข้ากันได้ของประสิทธิภาพ
หนึ่งในเป้าหมายของโปรแกรมความเข้ากันได้ของ Android คือเพื่อให้แน่ใจว่ามีประสบการณ์การใช้งานที่สอดคล้องกันสำหรับ
ผู้บริโภค การใช้งานที่เข้ากันได้จะต้องตรวจสอบให้แน่ใจว่าแอปพลิเคชันทำงานอย่างถูกต้องเท่านั้น
อุปกรณ์ แต่พวกเขาทำเช่นนั้นด้วยประสิทธิภาพที่สมเหตุสมผลและประสบการณ์การใช้งานที่ดีโดยรวม
การใช้งานอุปกรณ์จะต้องเป็นไปตามตัวชี้วัดประสิทธิภาพที่สำคัญของอุปกรณ์ที่เข้ากันได้กับ Android 1.6
ดังในตารางด้านล่าง:
ตัวชี้วัด
เกณฑ์ประสิทธิภาพ
ความคิดเห็น

นี่คือการทดสอบโดย CTS
แอปพลิเคชันต่อไปนี้
เวลาเปิดตัวถูกวัดเป็นเวลาทั้งหมด
ควรเปิดตัวภายในไฟล์
ทำการโหลดกิจกรรมเริ่มต้นสำหรับไฟล์
แอปพลิเคชัน
เวลาที่กำหนด
แอปพลิเคชันรวมถึงเวลาที่ใช้ในการเริ่มไฟล์
เวลาอาหารกลางวัน
เบราว์เซอร์: น้อยกว่า 1300ms
กระบวนการ Linux โหลดแพ็คเกจ Android ลงในไฟล์
MMS/SMS: น้อยกว่า 700ms
Dalvik VM และโทรหา onCreate
AlarmClock: น้อยกว่า 650ms
แอปพลิเคชันหลายรายการจะเป็น
นี่คือการทดสอบโดย CTS
เปิดตัว เปิดตัวอีกครั้ง
แอปพลิเคชันแรกพร้อมกันควร
การใช้งาน
เสร็จสมบูรณ์น้อยกว่าไฟล์
เวลาเปิดตัวดั้งเดิม
10. ความเข้ากันได้ของโมเดลความปลอดภัย
การใช้งานอุปกรณ์จะต้องใช้รูปแบบความปลอดภัยที่สอดคล้องกับความปลอดภัยของแพลตฟอร์ม Android
แบบจำลองตามที่กำหนดไว้ในเอกสารอ้างอิงความปลอดภัยและการอนุญาตใน API [ทรัพยากร, 29] ใน
เอกสารนักพัฒนา Android การใช้งานอุปกรณ์จะต้องรองรับการติดตั้งที่ลงนามด้วยตนเอง
แอปพลิเคชันโดยไม่ต้องได้รับอนุญาต/ใบรับรองเพิ่มเติมจากบุคคลที่สาม/หน่วยงานใด ๆ
โดยเฉพาะอุปกรณ์ที่เข้ากันได้จะต้องสนับสนุนกลไกความปลอดภัยดังต่อไปนี้:
10.1. การอนุญาต
การใช้งานอุปกรณ์จะต้องรองรับโมเดลการอนุญาต Android ตามที่กำหนดไว้ใน Android
เอกสารนักพัฒนา [ ทรัพยากร , 9] โดยเฉพาะการใช้งานจะต้องบังคับใช้การอนุญาตแต่ละครั้ง
กำหนดตามที่อธิบายไว้ในเอกสาร SDK; ไม่อนุญาตให้ใช้สิทธิ์เปลี่ยนแปลงหรือเพิกเฉย
การใช้งานอาจเพิ่มการอนุญาตเพิ่มเติมหากสตริง ID สิทธิ์ใหม่ไม่ได้อยู่ในไฟล์
Android.* เนมสเปซ
10.2. ผู้ใช้และการแยกกระบวนการ
การใช้งานอุปกรณ์จะต้องรองรับโมเดลแอปพลิเคชันแอปพลิเคชัน Android ซึ่งแต่ละแอปพลิเคชัน
ทำงานเป็น UID สไตล์ Unix ที่ไม่เหมือนใครและในกระบวนการแยกต่างหาก
การใช้งานอุปกรณ์จะต้องรองรับการรันหลายแอปพลิเคชันเป็น ID ผู้ใช้ Linux เดียวกัน
ว่าแอปพลิเคชันได้รับการลงนามและสร้างอย่างถูกต้องตามที่กำหนดไว้ในความปลอดภัยและการอนุญาต
อ้างอิง [ ทรัพยากร , 29]

10.3. สิทธิ์ของระบบไฟล์
การใช้งานอุปกรณ์จะต้องรองรับโมเดลการเข้าถึงไฟล์ Android ตามที่กำหนดไว้ใน AS
กำหนดไว้ในการอ้างอิงความปลอดภัยและการอนุญาต [ทรัพยากร , 29]
11. ชุดทดสอบความเข้ากันได้
การใช้งานอุปกรณ์จะต้องผ่านชุดทดสอบความเข้ากันได้ของ Android (CTS) [ ทรัพยากร 3] พร้อมใช้งาน
จากโครงการ Android Open Source โดยใช้ซอฟต์แวร์การจัดส่งขั้นสุดท้ายบนอุปกรณ์ นอกจากนี้
ผู้ใช้อุปกรณ์ควรใช้การใช้งานอ้างอิงในแผนผังโอเพนซอร์ส Android เป็น
มากที่สุดเท่าที่จะเป็นไปได้และต้องมั่นใจในความเข้ากันได้ในกรณีที่มีความกำกวมใน CTS และใด ๆ
การปรับปรุงชิ้นส่วนของซอร์สโค้ดอ้างอิง
CTS ได้รับการออกแบบให้ทำงานบนอุปกรณ์จริง เช่นเดียวกับซอฟต์แวร์ใด ๆ CTS อาจมีข้อบกพร่อง
CTS จะได้รับการจัดเวอร์ชันโดยไม่ขึ้นกับคำจำกัดความความเข้ากันได้นี้
CTS อาจเปิดตัวสำหรับ Android 1.6 อย่างไรก็ตามการเผยแพร่ดังกล่าวจะแก้ไขข้อบกพร่องเชิงพฤติกรรมใน CTS เท่านั้น
การทดสอบและจะไม่กำหนดการทดสอบพฤติกรรมหรือ API ใหม่สำหรับการเปิดตัวแพลตฟอร์มที่กำหนด
12. ติดต่อเรา
คุณสามารถติดต่อทีมงานความเข้ากันได้ของ Android ได้ที่ compatibility@android.com เพื่อขอคำชี้แจงที่เกี่ยวข้องกับ
คำจำกัดความของ compatibiltiy นี้และเพื่อให้ข้อเสนอแนะเกี่ยวกับคำจำกัดความนี้

ภาคผนวก A: Intents แอปพลิเคชันที่จำเป็น
หมายเหตุ: รายการนี้เป็นชั่วคราวและจะได้รับการปรับปรุงในอนาคต
การดำเนินการตามแอปพลิเคชัน
แผนการประเภท MIME
(ไม่มี)
ข้อความ/ธรรมดา

http
ข้อความ/html
เบราว์เซอร์
Android.intent.action.view
https
แอปพลิเคชัน/XHTML+XML
แอปพลิเคชัน/
vnd.wap.xhtml+xml

(ไม่มี)
Android.intent.action.web_search
http
(ไม่มี)
https
Android.media.action.image_capture
Android.media.action.still_image_camera

กล้อง
Android.media.action.video_camera
Android.media.action.video_capture

vnd.android.cursor.dir/
Android.intent.action.view
ภาพ
Android.intent.action.get_content
vnd.android.cursor.dir/
Android.intent.action.pick
วิดีโอ
Android.intent.action.attach_data
ภาพ/*
วิดีโอ/*

Android.intent.action.view
RTSP
วิดีโอ/mp4
วิดีโอ/3GP

Android.intent.action.view
http
วิดีโอ/3GPP
วิดีโอ/3GPP2

Android.intent.action.dial
โทรศัพท์ /
Android.intent.action.view
โทร
รายชื่อผู้ติดต่อ
Android.intent.action.call
Android.intent.action.dial
vnd.android.cursor.dir/
Android.intent.action.view
บุคคล

vnd.android.cursor.dir/
บุคคล
vnd.android.cursor.dir/

Android.intent.action.pick
โทรศัพท์
vnd.android.cursor.dir/
รหัสไปรษณีย์

vnd.android.cursor.item/
บุคคล
vnd.android.cursor.item/

Android.intent.action.get_content
โทรศัพท์
vnd.android.cursor.item/
รหัสไปรษณีย์

ข้อความ/ธรรมดา
อีเมล
Android.intent.action.send
ภาพ/*
วิดีโอ/*

Android.intent.action.view
ส่งจดหมาย
Android.intent.action.sendto
ข้อความ
Android.intent.action.view
smsto
SMS / MMS Android.intent.action.sendto
MMS
MMSTO

เสียง/*
แอปพลิเคชัน/ogg

ดนตรี
Android.intent.action.view
ไฟล์
แอปพลิเคชัน/X-OGG
แอปพลิเคชัน/iTunes

เสียง/mp3
เสียง/x-mp3

Android.intent.action.view
http
เสียง/MPEG
เสียง/mp4
เสียง/mp4a-latm

vnd.android.cursor.dir/
ArtistalBum
vnd.android.cursor.dir/
อัลบั้ม
vnd.android.cursor.dir/

Android.intent.action.pick
กำลังเล่น
vnd.android.cursor.dir/
ติดตาม
nd.android.cursor.dir/
เพลย์ลิสต์
vnd.android.cursor.dir/
วิดีโอ

สื่อ/*
เสียง/*

Android.intent.action.get_content
แอปพลิเคชัน/ogg
แอปพลิเคชัน/X-OGG
วิดีโอ/*


เนื้อหา
บรรจุุภัณฑ์
Android.intent.action.view
ไฟล์
ผู้ติดตั้ง
บรรจุุภัณฑ์
ไฟล์
Android.intent.action.package_install
http
https

Android.intent.action.all_apps
Android.settings.settings
Android.settings.wireless_settings
Android.settings.airplane_mode_settings
Android.settings.wifi_settings
Android.settings.apn_settings
Android.settings.bluetooth_settings
Android.settings.date_settings
Android.settings.locale_settings

การตั้งค่า
Android.settings.input_method_settings
com.android.settings.sound_settings
com.android.settings.display_settings
Android.settings.security_setting
Android.settings.location_source_settings
Android.settings.internal_storage_settings
Android.settings.memory_card_settings
Android.intent.action.set_wallpaper

ค้นหา
Android.intent.action.search
แบบสอบถาม
Android.intent.action.search_long_press
เสียง
Android.intent.action.voice_command
การจัดการผู้ติดต่อ
การกระทำโดยเจตนา
คำอธิบาย
เริ่มกิจกรรมที่ให้ผู้ใช้เลือก
แนบ _image
ผู้ติดต่อเพื่อแนบภาพเข้ากับ
ใช้แล้ว
extra_create_description
ด้วย show_or_create_contact to
ระบุคำอธิบายที่แน่นอนว่าเป็น


แสดงเมื่อแจ้งให้ผู้ใช้ทราบเกี่ยวกับ
การสร้างผู้ติดต่อใหม่

ใช้แล้ว
ด้วย show_or_create_contact
to
extra_force_create
บังคับให้สร้างผู้ติดต่อใหม่หากไม่มี
พบผู้ติดต่อที่ตรงกัน

นี่คือความตั้งใจที่ถูกไล่ออกเมื่อ
search_suggestion_clicked
คำแนะนำการค้นหาจะถูกคลิก
นี่คือความตั้งใจที่ถูกไล่ออกเมื่อ
search_suggestion_create_contact_clicked คำแนะนำการค้นหาสำหรับการสร้างไฟล์
คลิกที่จะคลิกที่
นี่คือความตั้งใจที่ถูกไล่ออกเมื่อ
search_suggestion_dial_number_clicked
ค้นหาข้อเสนอแนะสำหรับการโทรออกตัวเลข
ถูกคลิก

ใช้เป็นอินพุตข้อมูล URI ด้วย mailto:
show_or_create_contact
หรือโทรศัพท์: โครงการ

ภาคผนวก B: การออกอากาศที่จำเป็น หมายเหตุ: รายการนี้เป็นชั่วคราวและจะเป็น
อัปเดตในอนาคต

การกระทำโดยเจตนา
คำอธิบาย
การออกอากาศการดำเนินการ: นี่คือออกอากาศหนึ่งครั้งหลังจาก
action_boot_completed
ระบบได้ทำการบูตเสร็จแล้ว
การออกอากาศการดำเนินการ: นี่คือการออกอากาศครั้งเดียวเมื่อก
action_call_button
ได้รับการโทร
การออกอากาศการดำเนินการ: "ปุ่มกล้อง" คือ
action_camera_button
กด
การออกอากาศการดำเนินการ: ปัจจุบัน
action_configuration_changed
การกำหนดค่า อุปกรณ์ (การวางแนว, สถานที่, ฯลฯ ) มี
เปลี่ยน.
action_date_changed
การออกอากาศ: วันที่มีการเปลี่ยนแปลง
การดำเนินการออกอากาศ: ระบุสภาพหน่วยความจำต่ำ
action_device_storage_low
บนอุปกรณ์
การดำเนินการออกอากาศ: ระบุสภาพหน่วยความจำต่ำ
action_device_storage_ok
บนอุปกรณ์ไม่มีอยู่อีกต่อไป
การออกอากาศการกระทำ: ชุดหูฟังแบบมีสายเสียบเข้าหรือ
action_headset_plug
ถอดปลั๊ก
การออกอากาศการดำเนินการ: วิธีการป้อนข้อมูลได้รับ
action_input_method_changed
เปลี่ยน.
การออกอากาศการดำเนินการ: สื่อภายนอกถูกลบออก
action_media_bad_removal
จากช่องเสียบการ์ด SD แต่ Mount Point ไม่ได้
unmounted
การออกอากาศการดำเนินการ: "ปุ่มสื่อ" คือ
action_media_button
กด
การออกอากาศการดำเนินการ: มีสื่อภายนอกอยู่และ
กำลังตรวจสอบเส้นทางไปยังจุดเมานต์สำหรับ
action_media_checking
สื่อตรวจสอบมีอยู่ในไฟล์
Intent.mdata Field
การดำเนินการออกอากาศ: ผู้ใช้แสดงความปรารถนาที่จะ
action_media_eject
ลบสื่อจัดเก็บข้อมูลภายนอก
การดำเนินการออกอากาศ: สื่อภายนอกมีอยู่และ
action_media_mounted
ติดตั้งที่จุดเมานต์
การออกอากาศการดำเนินการ: สื่อภายนอกมีอยู่ แต่คือ
การใช้ FS ที่เข้ากันไม่ได้ (หรือว่างเปล่า) เส้นทางไปยัง
action_media_nofs
จุดเมานต์สำหรับสื่อตรวจสอบคือ
มีอยู่ใน Intent.mdata Field
การออกอากาศการดำเนินการ: สื่อภายนอกได้รับ
action_media_removed
ลบออก.
การออกอากาศการดำเนินการ: เครื่องสแกนสื่อเสร็จแล้ว
action_media_scanner_finished
สแกนไดเรกทอรี
การออกอากาศการดำเนินการ: ขอเครื่องสแกนสื่อไปที่
action_media_scanner_scan_file
สแกนไฟล์และเพิ่มลงในฐานข้อมูลสื่อ

การออกอากาศการดำเนินการ: เครื่องสแกนสื่อได้เริ่มขึ้นแล้ว
action_media_scanner_started
สแกนไดเรกทอรี
การออกอากาศการดำเนินการ: สื่อภายนอกไม่ได้ติดตั้ง
action_media_shared
เพราะมันถูกแชร์ผ่านที่เก็บข้อมูลมวล USB
การออกอากาศการดำเนินการ: สื่อภายนอกมีอยู่ แต่
action_media_unmountable
ไม่สามารถติดตั้งได้
การออกอากาศการดำเนินการ: สื่อภายนอกมีอยู่ แต่
action_media_unmounted
ไม่ติดตั้งที่จุดเมานต์
การออกอากาศการดำเนินการ: การโทรออกกำลังจะเป็น
action_new_outgoing_call
วาง
การดำเนินการออกอากาศ: แพ็คเกจแอปพลิเคชันใหม่มี
action_package_added
ได้รับการติดตั้งบนอุปกรณ์
การดำเนินการออกอากาศ: แพ็คเกจแอปพลิเคชันที่มีอยู่
action_package_changed
มีการเปลี่ยนแปลง (เช่นส่วนประกอบได้รับ
เปิดใช้งานหรือปิดใช้งาน
การดำเนินการออกอากาศ: ผู้ใช้ได้ล้างข้อมูลของ
บรรจุภัณฑ์. สิ่งนี้ควรนำหน้า
โดย action_package_restarted หลังจากนั้น
action_package_data_cleared
ข้อมูลถาวรทั้งหมดจะถูกลบและสิ่งนี้
ส่งออกอากาศ โปรดทราบว่าแพ็คเกจที่เคลียร์
ไม่ ได้รับการออกอากาศนี้ ข้อมูลมี
ชื่อของแพ็คเกจ
การดำเนินการออกอากาศ: แพ็คเกจแอปพลิเคชันที่มีอยู่
ถูกลบออกจากอุปกรณ์ ข้อมูล
action_package_removed
มีชื่อของแพ็คเกจ แพ็คเกจ
ที่ติดตั้ง ไม่ ได้รับความตั้งใจนี้
การออกอากาศการดำเนินการ: แอปพลิเคชันเวอร์ชันใหม่
action_package_replaced
มีการติดตั้งแพ็คเกจแล้วแทนที่ที่มีอยู่แล้ว
เวอร์ชันที่ติดตั้งก่อนหน้านี้
การดำเนินการออกอากาศ: ผู้ใช้ได้รีสตาร์ทก
แพ็คเกจและกระบวนการทั้งหมดถูกฆ่าตาย
สถานะรันไทม์ทั้งหมดที่เกี่ยวข้องกับมัน (กระบวนการ
action_package_restarted
ควรลบสัญญาณเตือนการแจ้งเตือน ฯลฯ ) บันทึก
ว่าแพ็คเกจรีสตาร์ท ไม่ ได้รับสิ่งนี้
ออกอากาศ. ข้อมูลมีชื่อของ
บรรจุุภัณฑ์.
การออกอากาศการดำเนินการ: ผู้ให้บริการเนื้อหาบางรายมี
บางส่วนของเนมสเปซของพวกเขาที่พวกเขาเผยแพร่ใหม่
action_provider_changed
เหตุการณ์หรือรายการที่ผู้ใช้อาจเป็นโดยเฉพาะ
สนใจใน.
action_screen_off
การออกอากาศการดำเนินการ: ส่งหลังจากปิดหน้าจอ
action_screen_on
การออกอากาศการดำเนินการ: ส่งหลังจากเปิดหน้าจอ
การออกอากาศการดำเนินการ: รหัสผู้ใช้ถูกลบออก
action_uid_removed
จากระบบ
การออกอากาศการดำเนินการ: อุปกรณ์ได้ป้อน USB
action_ums_connected
โหมดการจัดเก็บมวล

การดำเนินการออกอากาศ: อุปกรณ์ออกจาก USB
action_ums_disconnected
โหมดการจัดเก็บมวล
การออกอากาศการดำเนินการ: ส่งเมื่อผู้ใช้อยู่
action_user_present
หลังจากอุปกรณ์ตื่นขึ้นมา (เช่นเมื่อ keyguard คือ
ไปแล้ว).
การออกอากาศการดำเนินการ: วอลล์เปเปอร์ระบบปัจจุบัน
action_wallpaper_changed
มีการเปลี่ยนแปลง.
action_time_changed
การออกอากาศการดำเนินการ: เวลาถูกตั้งค่า
action_time_tick
การดำเนินการออกอากาศ: เวลาปัจจุบันมีการเปลี่ยนแปลง
action_timezone_changed
การออกอากาศ: เขตเวลามีการเปลี่ยนแปลง
การออกอากาศการดำเนินการ: สถานะการเรียกเก็บเงินหรือการเรียกเก็บเงิน
action_battery_changed
ระดับของแบตเตอรี่มีการเปลี่ยนแปลง
การออกอากาศ: ระบุสภาพแบตเตอรี่ต่ำ
action_battery_low
บนอุปกรณ์ การออกอากาศนี้สอดคล้องกับไฟล์
กล่องโต้ตอบ "ระบบเตือนแบตเตอรี่ต่ำ"
การออกอากาศ: ระบุว่าแบตเตอรี่ไม่เป็นไร
หลังจากต่ำ จะถูกส่ง
action_battery_okay
หลังจาก action_battery_low เมื่อแบตเตอรี่
ได้กลับไปสู่สถานะโอเค
สถานะเครือข่าย
การกระทำโดยเจตนา
คำอธิบาย
การดำเนินการออกอากาศโดยเจตนาระบุว่าไฟล์
network_state_changed_action
สถานะของการเชื่อมต่อ Wi-Fi มีการเปลี่ยนแปลง
การดำเนินการออกอากาศโดยเจตนาระบุว่าไฟล์
rssi_changed_action
RSSI (ความแรงของสัญญาณ) มีการเปลี่ยนแปลง
การออกอากาศโดยเจตนาแสดงให้เห็นว่าก
SUMPLICANT_STATE_CHANGED_ACTION
การเชื่อมต่อกับผู้วิง
ก่อตั้งหรือสูญหาย
การออกอากาศเจตนาแสดงให้เห็นว่า Wi-Fi
wifi_state_changed_action
ได้รับการเปิดใช้งานปิดใช้งานการเปิดใช้งาน
ปิดการใช้งานหรือไม่ทราบ
รหัสเครือข่ายของเครือข่ายที่กำหนดค่า
Network_IDS_CHANGED_ACTION
อาจมีการเปลี่ยนแปลง
การดำเนินการออกอากาศโดยเจตนาระบุว่าไฟล์
การตั้งค่า action_background_data_setting_changed สำหรับการใช้ข้อมูลพื้นหลังมี
เปลี่ยนค่า
ความตั้งใจออกอากาศระบุว่าการเปลี่ยนแปลงใน
Connectivity_action
การเชื่อมต่อเครือข่ายเกิดขึ้น
การออกอากาศการดำเนินการ: ผู้ใช้ได้เปลี่ยนไฟล์
action_airplane_mode_changed
โทรศัพท์เข้าหรือออกจากโหมดเครื่องบิน


ภาคผนวก C: การพิจารณาในอนาคตภาคผนวกนี้จะชี้แจงบางส่วนของ Android นี้
1.6 คำจำกัดความความเข้ากันได้และในบางกรณีกล่าวถึงการเปลี่ยนแปลงที่คาดการณ์ไว้หรือวางแผนไว้สำหรับก
แพลตฟอร์ม Android เวอร์ชันในอนาคต ภาคผนวกนี้มีวัตถุประสงค์เพื่อให้ข้อมูลและการวางแผนเท่านั้นและ
ไม่ได้เป็นส่วนหนึ่งของคำจำกัดความความเข้ากันได้สำหรับ Android 1.6
1. อุปกรณ์ที่ไม่ใช่สายเลือด
Android 1.6 มีวัตถุประสงค์เฉพาะสำหรับโทรศัพท์ ฟังก์ชั่นโทรศัพท์ไม่ได้เป็นทางเลือก รุ่นอนาคต
ของแพลตฟอร์ม Android คาดว่าจะทำให้โทรศัพท์เป็นตัวเลือก (และอนุญาตให้ Android ที่ไม่ใช่โทรศัพท์
อุปกรณ์) แต่โทรศัพท์เท่านั้นที่เข้ากันได้กับ Android 1.6
2. ความเข้ากันได้ของบลูทู ธ
การเปิดตัว Android 1.6 ของ Android ไม่รองรับ Bluetooth API ดังนั้นจากมุมมองความเข้ากันได้
บลูทู ธ ไม่ได้กำหนดข้อควรพิจารณาใด ๆ สำหรับแพลตฟอร์มรุ่นนี้ อย่างไรก็ตามเวอร์ชันในอนาคต
ของ Android จะแนะนำ Bluetooth API ณ จุดนั้นการสนับสนุนบลูทู ธ จะกลายเป็นข้อบังคับสำหรับ
ความเข้ากันได้
ดังนั้นเราขอแนะนำอย่างยิ่งว่าอุปกรณ์ Android 1.6 รวมบลูทู ธ เพื่อให้พวกเขาจะเป็น
เข้ากันได้กับ Android เวอร์ชันในอนาคตที่ต้องใช้บลูทู ธ
3. ส่วนประกอบฮาร์ดแวร์ที่ต้องการ
ส่วนประกอบฮาร์ดแวร์ทั้งหมดในส่วนที่ 8 (รวมถึง wifi, magnetometer/เข็มทิศ, accelerometer ฯลฯ ) คือ
จำเป็นและอาจไม่ถูกละเว้น Android รุ่นอนาคตคาดว่าจะสร้างบางส่วน (แต่ไม่ใช่ทั้งหมด)
ส่วนประกอบเหล่านี้เป็นตัวเลือกควบคู่กับเครื่องมือที่สอดคล้องกันสำหรับนักพัฒนาบุคคลที่สามในการจัดการสิ่งเหล่านี้
การเปลี่ยนแปลง
4. แอปพลิเคชันตัวอย่าง
เอกสารคำจำกัดความความเข้ากันได้สำหรับ Android เวอร์ชันในอนาคตจะรวมถึงที่ครอบคลุมมากขึ้นและ
รายชื่อตัวแทนของแอปพลิเคชันมากกว่าที่ระบุไว้ในส่วนที่ 4 ด้านบน สำหรับ Android 1.6
แอปพลิเคชันที่ระบุไว้ในส่วนที่ 4 จะต้องทดสอบ
5. สัมผัสหน้าจอ
คำจำกัดความความเข้ากันได้ในอนาคตอาจหรือไม่อนุญาตให้อุปกรณ์ไม่ได้สัมผัสหน้าจอสัมผัส
อย่างไรก็ตามในปัจจุบันการใช้งาน Android Framework ส่วนใหญ่ถือว่ามีการดำรงอยู่ของก
หน้าจอสัมผัส; การละเว้นหน้าจอสัมผัสจะทำลายแอพพลิเคชั่น Android ของบุคคลที่สามในปัจจุบันอย่างมีนัยสำคัญ
ดังนั้นใน Android 1.6 จำเป็นต้องใช้หน้าจอสัมผัสเพื่อความเข้ากันได้

6. ประสิทธิภาพ
CTS เวอร์ชันในอนาคตจะวัดการใช้ CPU และประสิทธิภาพของสิ่งต่อไปนี้
ส่วนประกอบของการใช้งาน:
•กราฟิก 2D
•กราฟิก 3 มิติ
• การเล่นวิดีโอ
•การเล่นเสียง
•การเล่นบลูทู ธ A2DP

โครงร่างเอกสาร