ภาพรวมเวลา

หน้านี้อธิบายวิธีการทำงานของการตรวจหาเวลาและเขตเวลาใน Android ช่วงเวลานี้ รวมถึงวิธีที่ Android ตรวจหาเวลาและเขตเวลาโดยอัตโนมัติ รวมถึงการกำหนดค่า ตัวเลือกสำหรับผู้ผลิตอุปกรณ์และข้อมูลการทดสอบ

ภาพรวมของเวลาและเขตเวลา

เพื่อกำหนดเวลาท้องถิ่นของผู้ใช้เพื่อแสดงในสถานที่ต่างๆ เช่น สถานะ Android จะติดตามสถานะ 2 สถานะที่เกี่ยวข้องแต่ไม่เกี่ยวข้องกัน ได้แก่

  • เวลา Unix Epoch ปัจจุบัน
  • เขตเวลาปัจจุบัน

เวลา Unix Epoch ปัจจุบันและเขตเวลาปัจจุบันเป็นสถานะของทั้งอุปกรณ์ ซึ่งหมายความว่ามีการแชร์ โดยผู้ใช้ทุกคนในอุปกรณ์หนึ่งๆ

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

เขตเวลาปัจจุบันจะกําหนดการปรับเปลี่ยนที่จะแปลง เวลา Unix Epoch ปัจจุบันเป็นเวลาท้องถิ่น ตัวอย่างเช่น ในช่วงฤดูร้อนในลอสแอนเจลิส เวลาของ Unix Epoch ในปัจจุบันจะลดเวลา 7 ชั่วโมง โดยแบ่งเวลาออกเป็น ฤดูหนาวจะลดลง 8 ชั่วโมง

เพื่อรองรับการคำนวณเวลาท้องถิ่นเหล่านี้ อุปกรณ์ Android ทั้งหมดจะมี ฐานข้อมูลของกฎเขตเวลาทั่วโลกทั้งหมด ดูข้อมูลเพิ่มเติมเกี่ยวกับกฎเขตเวลาได้ที่ กฎเขตเวลา

เมื่อผู้ใช้เดินทางไปยังตำแหน่งใหม่ที่ใช้เขตเวลาอื่น ไม่จำเป็นต้องปรับเวลา Epoch ของ Unix ในปัจจุบัน แต่ผู้ใช้มักต้องการ เพื่อดูเวลาท้องถิ่นแทนที่จะเป็นเวลาในสถานที่ก่อนหน้า กำลังเปลี่ยน เขตเวลาปัจจุบันช่วยให้มั่นใจได้ว่ามีการใช้ออฟเซ็ตที่ถูกต้องกับช่วงเวลาปัจจุบัน เวลา Unix Epoch เพื่อแสดงเวลาท้องถิ่นที่ถูกต้องสำหรับตำแหน่งใหม่

AOSP ช่วยให้ผู้ใช้ควบคุมได้ว่าจะให้เขตเวลาและเขตเวลา การตั้งค่าให้โดยอัตโนมัติผ่านกลไกต่อไปนี้

  • การตรวจหาเวลาอัตโนมัติ: ตรวจสอบว่าอุปกรณ์ระบุเวลาที่ถูกต้อง เวลา Unix Epoch ปัจจุบัน
  • การตรวจหาเขตเวลาอัตโนมัติ: ตรวจสอบว่าอุปกรณ์ระบุเขตเวลา เขตเวลาปัจจุบัน

การตรวจหาเวลาอัตโนมัติ

ส่วนนี้จะแสดงภาพรวมของบริการ time_detector ที่จัดการ การตรวจหาเวลาอัตโนมัติ การควบคุมผู้ใช้ ตัวเลือกการกำหนดค่า และการทดสอบ รายละเอียด

บริการ time_detector

time_detector บริการ, แสดงในอุปกรณ์ที่ใช้ Android 10 ขึ้นไป, จัดการเวลาอัตโนมัติ การตรวจจับ ปรับเวลา Epoch ของ Unix ปัจจุบันของอุปกรณ์ตามความจำเป็นเมื่อ การตรวจหาเวลาอัตโนมัติเปิดใช้งานอยู่

บริการ time_detector จะมีสถานะใดสถานะหนึ่งจาก 2 สถานะเสมอ ได้แก่ ไม่แน่นอน หรือ บางข้อ จะมีการกำหนดสถานะบางอย่างหรือไม่แน่นอนของบริการ ตามเวลาที่แนะนำที่ได้รับจากแหล่งที่มาต่างๆ

เมื่อบริการ time_detector แน่ใจแล้ว หมายความว่าบริการดังกล่าวได้รับ คำแนะนำที่มีข้อมูลเวลา Unix Epoch จะแทนที่ Epoch ปัจจุบันของ Unix หากเวลาที่แนะนำแตกต่างจากเวลา Epoch ของ Unix ปัจจุบัน

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

ในการกำหนดเวลา Unix Epoch ปัจจุบันโดยอัตโนมัติ อุปกรณ์จะมี แหล่งที่มาที่ใช้ได้ รายการเหล่านี้เรียกว่าต้นทางในเอกสารนี้ บริการของ time_detector จะถือว่าลำดับของคำแนะนำแตกต่างกันโดยอิงตาม ต้นทาง

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

แม้ว่าเวลา UTC จะได้รับการยอมรับระหว่างประเทศ แต่ก็มีสาเหตุหลายประการ การระบุเวลา Unix Epoch ปัจจุบันไม่ใช่เรื่องง่ายสำหรับ สำหรับอุปกรณ์ Android

  • เวลา Unix Epoch เป็นระบบบอกเวลาที่แตกต่างจากเวลา UTC เล็กน้อย การแปลงค่าระหว่าง 2 อย่างนี้ต้องใช้ความรู้ว่าเกิดการก้าวกระโดดขึ้นเมื่อใดและ วิธีที่ต้นทางจัดการ
  • ต้นทางอาจพร้อมให้บริการในบางช่วงเวลาหรือในบางกรณีเท่านั้น สถานการณ์ เช่น หากต้นทางต้องมีการเชื่อมต่อเครือข่าย อาจใช้งานได้เฉพาะเมื่ออุปกรณ์เชื่อมต่ออินเทอร์เน็ตเท่านั้น
  • ต้นทางอาจไม่ถูกต้องหรือไม่แม่นยำ หรือมีข้อผิดพลาด สำหรับ ตัวอย่างเช่น หากเสาสัญญาณโทรศัพท์ไม่ติดตาม "เวลาสากล" ต้นทางของโทรศัพท์อาจให้คำแนะนำเวลาที่ไม่ถูกต้อง
  • อาจมีความไม่ถูกต้องเกิดขึ้นขณะที่เก็บข้อมูลเวลา Epoch ของ Unix ตัวอย่างเช่น ความล่าช้าของเครือข่าย การบัฟเฟอร์ หรือการกำหนดเวลากระบวนการอาจทำให้เกิด เวลา Unix Epoch ให้ไม่ถูกต้อง
  • นาฬิกาอ้างอิงที่ใช้ปรับคำแนะนำสำหรับเวลาที่ผ่านไปนับตั้งแต่ คำแนะนำที่ได้รับอาจไม่ถูกต้อง

ต้นทางของการตรวจหาเวลาหลัก 2 รายการที่กำหนดค่าไว้สำหรับการใช้งานโดยค่าเริ่มต้นใน AOSP:

  • เครือข่าย: ใช้เครือข่าย เซิร์ฟเวอร์เวลาโปรโตคอลเวลา (NTP)
  • โทรศัพท์: ใช้การระบุตัวตนของเครือข่ายและโทรศัพท์เขตเวลา (NITZ) สัญญาณ

ทั้งต้นทางของโทรศัพท์และเครือข่ายต้องเชื่อมต่อกับเครือข่ายภายนอก ซึ่งอาจทำไม่ได้เสมอไป

ตั้งแต่ Android 12 เป็นต้นไป Android ยังรองรับ ต้นทางต่อไปนี้ ซึ่งไม่ได้กําหนดค่าไว้ให้ใช้โดยค่าเริ่มต้น

  • GNSS: ใช้ GPS การค้นหาเวลาจากแหล่งที่มาของ GNSS
  • ภายนอก: ทั่วไป ซึ่งอนุญาตให้ผู้ผลิตอุปกรณ์ผสานรวมแหล่งข้อมูล เวลา Unix Epoch

การตั้งค่าเวลา

ผู้ใช้สามารถเปิดใช้การตรวจหาเวลาอัตโนมัติในระบบ > วันที่และเวลาในฟิลด์ แอปการตั้งค่า AOSP

การตรวจหาเวลาอัตโนมัติในการตั้งค่า

รูปที่ 1 การตรวจหาเวลาอัตโนมัติในการตั้งค่า

ตารางต่อไปนี้อธิบายการควบคุมของผู้ใช้ในการตรวจจับเวลาใน AOSP แอปการตั้งค่า

*ใน Android 11 และต่ำกว่า การตั้งค่านี้จะมีข้อความว่าใช้ เวลาที่เครือข่ายระบุ

ตำแหน่งการตั้งค่า AOSP ชื่อการตั้งค่า AOSP ขอบเขต ลักษณะการทำงาน
ระบบ > วันที่และเวลา ตั้งเวลาอัตโนมัติ* ผู้ใช้ทั้งหมด

ปุ่มเปิด/ปิด

เมื่อเปิด อุปกรณ์จะรับผิดชอบในการตรวจหา Unix ปัจจุบัน เวลา Epoch เมื่อปิด ผู้ใช้จะได้รับการควบคุมเพื่อตั้งค่า ของอุปกรณ์ด้วยตนเอง

เมื่อผู้ใช้ป้อนเวลาด้วยตนเอง ก็จะป้อนเวลาท้องถิ่น ไม่ใช่ Unix Epoch เวลา Unix Epoch ปัจจุบันจะคำนวณโดยใช้เขตเวลาปัจจุบัน เพื่อรับเวลา Unix Epoch

การกำหนดค่า

ผู้ผลิตอุปกรณ์กำหนดค่าบริการ time_detector ได้หลายวิธี เช่น ต้นทางที่จะใช้และวิธีจัดลำดับความสำคัญของสัญญาณจากต้นทางเหล่านั้น

ลำดับความสำคัญของต้นทาง

ใน Android 12 ผู้ผลิตอุปกรณ์สามารถเปลี่ยนการตั้งค่า core/res/res/values/config.xmlไฟล์การกำหนดค่าเพื่อระบุเวลา ต้นทางที่จะรวมไว้ในการตรวจหาเวลาอัตโนมัติ และลำดับความสำคัญที่ time_detector พิจารณาแหล่งที่มาเหล่านี้

สำหรับอุปกรณ์ที่ใช้ Android 11 หรือต่ำกว่า ลำดับความสำคัญของต้นทางจะฮาร์ดโค้ดเป็น ["telephony", "network"] ซึ่งหมายความว่าระบบจะให้ความสำคัญกับคำแนะนำโทรศัพท์ก่อน เหนือคำแนะนำเครือข่าย

การกำหนดค่า AOSP เริ่มต้นมีดังนี้

<!-- Specifies priority of automatic time sources. Suggestions from higher entries in the list
     take precedence over lower ones.
     See com.android.server.timedetector.TimeDetectorStrategy for available sources. -->
<string-array name="config_autoTimeSourcesPriority">
    <item>network</item>
    <item>telephony</item>
</string-array>

ใน Android 12 คำแนะนำเกี่ยวกับเครือข่ายและโทรศัพท์ มีการกำหนดค่าเป็นต้นทางที่จะใช้โดยค่าเริ่มต้น เวลาที่แนะนำของเครือข่ายคือ มีลำดับความสำคัญสูงกว่าเวลาแนะนำทางโทรศัพท์ ผู้ผลิตอุปกรณ์สามารถเปลี่ยน ลำดับของต้นทางที่จะเปลี่ยนกลับไปเป็นลักษณะการทำงานใน Android 11 หรือต่ำกว่า เมื่อให้ความสำคัญกับโทรศัพท์มากกว่า

โดยค่าเริ่มต้น ถ้าคำแนะนำที่ถูกต้องที่มีลำดับความสำคัญสูงสุดตรงกับ เวลาของนาฬิการะบบปัจจุบันเป็นภายใน 2-3 วินาที เวลาของอุปกรณ์จะไม่ เปลี่ยนแปลงได้ ทั้งนี้เพื่อหลีกเลี่ยงการสร้างงานสำหรับแอปที่ติดตั้งซึ่งฟัง Intent ACTION_TIME_CHANGED

ค่าต้นทางที่อนุญาตมีดังนี้

ขอบเขตเวลาที่อนุญาต

Android 14 มีกรอบเวลาสูงสุดสำหรับเวลา คำแนะนำที่บริการ time_detector ได้รับ หากอุปกรณ์รองรับ กระบวนการ 32 บิต โดยเฟรมเวิร์กจะกำหนดช่วงเวลาสูงสุดเพื่อป้องกันอุปกรณ์ ไม่ให้ใช้คำแนะนำเวลาที่อาจทำให้เกิดปัญหา Y2038

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

สำหรับอุปกรณ์ที่ใช้ Android 11 หรือต่ำกว่า บริการ time_detector จะไม่ ตรวจสอบคำแนะนำเวลา Unix Epoch ที่เข้ามาใหม่

การแก้ไขข้อบกพร่องและการทดสอบเวลา

ส่วนนี้ให้ข้อมูลเกี่ยวกับวิธีแก้ไขข้อบกพร่องและทดสอบลักษณะการทำงานของ บริการ time_detector และคอมโพเนนต์อื่นๆ ที่ต้นทางทั้งหมดแชร์

โต้ตอบกับบริการ time_detector

วิธีดูการกำหนดค่าและสถานะของบริการ time_detector บริการ time_detector ให้ใช้:

adb shell cmd time_detector dump

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

adb shell cmd time_detector help

ผลลัพธ์ความช่วยเหลือยังจะอธิบายพร็อพเพอร์ตี้บริการ device_config ที่สามารถ ใช้เพื่อส่งผลต่อลักษณะการทำงานของ time_detector สำหรับการทดสอบหรือเวอร์ชันที่ใช้งานจริง โปรดดูรายละเอียดที่หัวข้อ การกำหนดค่าอุปกรณ์โดยใช้บริการ device_config

ในการตรวจสอบการตรวจสอบเวลาอัตโนมัติ ผู้ทดสอบจะต้องทราบว่ามาจากต้นทางใด กำลังใช้บริการ time_detector ต่อไปนี้เป็นตัวอย่างของเอาต์พุตจาก คำสั่ง adb shell cmd time_detector dump ที่มีข้อมูลเกี่ยวกับ ต้นทางและสถานะปัจจุบันของบริการเป็นตัวหนา:

$ adb shell cmd time_detector dump

TimeDetectorStrategy:
  mLastAutoSystemClockTimeSet=null
  mEnvironment.isAutoTimeDetectionEnabled()=true
  mEnvironment.elapsedRealtimeMillis()=23717241
  mEnvironment.systemClockMillis()=1626707861336
  mEnvironment.systemClockUpdateThresholdMillis()=2000
  mEnvironment.autoTimeLowerBound()=2021-07-19T07:48:05Z(1626680885000)
  mEnvironment.autoOriginPriorities()=[network,telephony]
  Time change log:
    ...
  Telephony suggestion history:
    ...
  Network suggestion history:
    ...
  Gnss suggestion history:
    ...
  External suggestion history:
    ...

ข้อมูลสามารถตีความได้ดังนี้

คีย์ ค่า
mEnvironment.isAutoTimeDetectionEnabled() การตรวจหาเวลาอัตโนมัติเปิดใช้งานอยู่หรือไม่
mEnvironment.autoTimeLowerBound() ขอบเขตล่างปัจจุบันที่ใช้เพื่อตรวจสอบเวลาที่แนะนำ
mEnvironment.autoOriginPriorities() ต้นทางที่ใช้งานอยู่และลําดับความสําคัญ

บันทึกการเปลี่ยนแปลงเวลาจะระบุโอกาสต่างๆ ที่บริการ time_detector มี เปลี่ยนเวลา Unix Epoch ปัจจุบันของอุปกรณ์

ข้อมูลประวัติคำแนะนำจะระบุว่ามีคำแนะนำใดขึ้นโดย จากต้นทางแต่ละแห่ง

การตรวจหาเขตเวลาอัตโนมัติ

ส่วนนี้จะแสดงภาพรวมของบริการ time_zone_detector ที่ จัดการการตรวจหาเขตเวลาอัตโนมัติ การควบคุมของผู้ใช้ในการตั้งค่า โทรศัพท์ และ การตรวจหาเขตเวลาของสถานที่และรายละเอียดการทดสอบ

บริการ time_zone_detector

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

เมื่อเปิดใช้การตรวจหาเขตเวลาอัตโนมัติ time_zone_detector จะอยู่ในเขตเวลาได้ สถานะใดสถานะหนึ่งจาก 2 สถานะ ได้แก่ ไม่แน่นอนและแน่นอน

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

บางรัฐของบริการ time_zone_detector อาจรวมรัฐที่ time_zone_detector ไม่มีข้อมูลเขตเวลาที่จะใช้ หรือที่ที่มี เขตเวลาต่างๆ ได้ให้เลือกหลากหลาย รัฐเหล่านี้มีดังต่อไปนี้

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

สถานะบางอย่างหรือไม่แน่นอนของบริการ time_zone_detector จะกำหนดตาม คำแนะนำเขตเวลาที่ส่งโดยอัลกอริทึม

โดยทั่วไปแล้ว คำแนะนำจะมีอยู่ 2 ประเภทซึ่งใกล้เคียงกับสถานะที่เป็นไปได้ ของ time_zone_detector: แน่นอนและไม่แน่นอน รายการต่อไปนี้คือ ตัวอย่างประเภทคำแนะนำ

  • ประเภท = uncertain, zoneIds = []

    • แต่อัลกอริทึมจะไม่รู้ว่าเขตเวลาคืออะไร
  • ประเภท = certain, zoneIds = ["Europe/London"]

    • อัลกอริทึมจะตรวจสอบว่าโซนเป็นยุโรป/ลอนดอน
  • ประเภท = certain, zoneIds = []`

    • อัลกอริทึมมีความแน่นอน แต่ไม่มีรหัสโซนเชื่อมโยงอยู่ ด้วยตำแหน่งปัจจุบัน
  • ประเภท = certain, zoneIds = ["America/Denver", "America/Phoenix"]

    • อัลกอริทึมจะมั่นใจว่าคำตอบคือ 1 ใน 2 โซน แต่ไม่สามารถเลือกระหว่าง "อเมริกา/เดนเวอร์" และ "อเมริกา/ฟีนิกซ์"

บริการ time_zone_detector ถือว่าลำดับของคำแนะนำแตกต่างกัน โดยอิงตามอัลกอริทึม คำแนะนำอาจขึ้นอยู่กับอัลกอริทึมด้วย มีข้อมูลเมตาที่บ่งชี้ถึงความแน่นอนของอัลกอริทึม

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

Android รองรับอัลกอริทึม 2 แบบสำหรับการตรวจหาเขตเวลา ดังนี้

  • โทรศัพท์
  • ตำแหน่ง

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

สำหรับรายละเอียดเกี่ยวกับสถานการณ์ที่ใช้อัลกอริทึมหลายแบบในการกำหนด เขตเวลา โปรดดูที่ โหมดสำรองสำหรับโทรศัพท์

โหมดสำรองสำหรับโทรศัพท์

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

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

ใน Android 14 ขึ้นไป ระบบอาจใช้โทรศัพท์สำรองสำหรับโทรศัพท์ ทริกเกอร์ผ่าน API การรายงานสถานะ LTZP กล่าวคือ หาก LTZP รายงานว่าไม่แน่นอนและความสามารถในการตรวจหาตำแหน่ง หรือเขตเวลาลดลงตามสภาพแวดล้อม โหมดสำรองสำหรับโทรศัพท์จะ ทริกเกอร์

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

โปรดดูรายละเอียดการกําหนดค่าสําหรับโหมดสํารองของโทรศัพท์ที่หัวข้อ การกำหนดค่าการตรวจหาเขตเวลา

การตั้งค่าเขตเวลา

ผู้ใช้สามารถเปิดใช้และกำหนดค่าสำหรับการตรวจหาเขตเวลาอัตโนมัติได้ใน แอปการตั้งค่า AOSP

การตรวจหาเขตเวลาอัตโนมัติในการตั้งค่า

รูปที่ 2 ตรวจหาเขตเวลาอัตโนมัติในการตั้งค่า

ตารางต่อไปนี้จะอธิบายการควบคุมของผู้ใช้ในการตรวจหาเขตเวลาใน แอปการตั้งค่า AOSP

*ใน Android 11 และต่ำกว่า การตั้งค่านี้จะมีป้ายกำกับไว้ ใช้เขตเวลาที่ระบุโดยเครือข่าย

ตำแหน่งการตั้งค่า AOSP ชื่อการตั้งค่า AOSP ขอบเขต ลักษณะการทำงาน
ระบบ > วันที่และเวลา ตั้งเขตเวลาอัตโนมัติ* ผู้ใช้ทั้งหมด

ปุ่มเปิด/ปิด

เมื่อเปิด อุปกรณ์จะรับผิดชอบในการตรวจหาเวลาปัจจุบัน เมื่อปิด ผู้ใช้จะได้รับการควบคุมเพื่อตั้งค่า ด้วยตนเอง

ระบบ > วันที่และเวลา ใช้ตำแหน่งเพื่อตั้งค่าเขตเวลา ผู้ใช้ปัจจุบัน

ปุ่มเปิด/ปิด

พร้อมใช้งานใน Android 12 ปุ่มสลับนี้ จะแสดงเมื่ออุปกรณ์รองรับการตรวจหาเขตเวลาของตำแหน่งเท่านั้น

สำหรับการเปลี่ยนแปลงที่เกิดขึ้นใน Android 14 โปรดดู อุปกรณ์ที่รองรับเฉพาะการตรวจหาเขตเวลาของตำแหน่งเท่านั้น

ตำแหน่ง ใช้ตำแหน่ง ผู้ใช้ปัจจุบัน

ปุ่มเปิด/ปิด

อนุญาตหรือป้องกันการใช้ตำแหน่งของอุปกรณ์โดยทั่วไป ค่าจะเป็น ที่เกี่ยวข้องหากอุปกรณ์รองรับการตรวจหาเขตเวลาของตำแหน่ง

ข้อมูลต่อไปนี้จะแสดงภาพรวมของลักษณะการทำงานของอุปกรณ์สำหรับเขตเวลา ตามการตั้งค่าที่ผู้ใช้เลือก

  • [วันที่และเวลา] ตั้งเขตเวลาอัตโนมัติ: ปิด

    • ผู้ใช้ต้องเลือกเขตเวลาด้วยตนเอง
  • [วันที่และเวลา] ตั้งเขตเวลาอัตโนมัติ: เปิด

    • [ตำแหน่ง] ใช้ตำแหน่ง: ปิด

      • ระบบจะใช้สัญญาณโทรศัพท์ในการตรวจหาเขตเวลา
    • [ตำแหน่ง] ใช้ตำแหน่ง: เปิด

      • [วันที่และเวลา] ใช้ตำแหน่งเพื่อตั้งค่าเขตเวลา: เปิด

        • ระบบจะใช้ตำแหน่งเพื่อตรวจหาเขตเวลา
      • [วันที่และเวลา] ใช้ตำแหน่งเพื่อตั้งค่าเขตเวลา: ปิด

        • สัญญาณโทรศัพท์จะใช้ในการตรวจจับเวลา

อุปกรณ์ผู้ใช้หลายคน

เนื่องจากการตั้งค่าหลายอย่างที่เกี่ยวข้องกำหนดขอบเขตเฉพาะผู้ใช้ปัจจุบัน พฤติกรรมการตรวจหาเขตเวลาของอุปกรณ์อาจเปลี่ยนแปลงเมื่อผู้ใช้ปัจจุบัน การเปลี่ยนแปลงในอุปกรณ์ Android ที่มีผู้ใช้หลายคน

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

อุปกรณ์ที่รองรับเฉพาะอัลกอริทึมการตรวจหาเขตเวลาของสถานที่เท่านั้น

ส่วนนี้จะอธิบายลักษณะของอุปกรณ์ที่รองรับเฉพาะตำแหน่ง อัลกอริทึม

  • Android 14 ขึ้นไป

    • ตัวเลือกใช้ตำแหน่งจะไม่แสดงให้ผู้ใช้เห็นในการตั้งค่า AOSP และอุปกรณ์จะทำงานเสมือนว่าตัวเลือกใช้ตำแหน่งเปิดอยู่
    • ค่าของการตั้งค่า SettingsProvider ที่กำหนดขอบเขตระดับผู้ใช้ location_time_zone_detection_enabled จะถูกละเว้น ค่านี้จะบันทึก ค่ากำหนดของผู้ใช้ในอุปกรณ์ประเภทอื่น
  • Android 12 หรือ Android 13

    • ตัวเลือกใช้ตำแหน่งจะแสดงต่อผู้ใช้ในแอปการตั้งค่า AOSP และ ผู้ใช้จึงปิดใช้ตัวเลือกนี้ได้ หากปิดใช้ตัวเลือก ระบบจะ อุปกรณ์จะไม่ตรวจหาเขตเวลาโดยอัตโนมัติ

ลักษณะการทำงานเมื่อเปลี่ยนไปใช้และจากการตรวจจับอัตโนมัติ

เมื่อผู้ใช้เปลี่ยนการตรวจหาเขตเวลาจากด้วยตนเองเป็นอัตโนมัติ time_zone_detector อาจทราบเขตเวลาปัจจุบันอยู่แล้ว หากใช่ เมื่อผู้ใช้เปิดใช้การตรวจหาอัตโนมัติ เขตเวลาของอุปกรณ์อาจมีการเปลี่ยนแปลง ในเวลาเดียวกันให้ตรงกับความคิดเห็นของบริการของ time_zone_detector

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

การตรวจหาเขตเวลาของโทรศัพท์

การตรวจหาเขตเวลาของโทรศัพท์จะใช้สัญญาณโทรศัพท์เพื่อระบุปัจจุบัน เขตเวลา สำหรับข้อมูลเพิ่มเติม โปรดดู เขตเวลาของโทรศัพท์ การตรวจจับ

การตรวจหาเขตเวลาของสถานที่

การตรวจหาเขตเวลาของตำแหน่งพร้อมให้บริการใน Android 12 หรือสูงกว่า นี่เป็นฟีเจอร์การตรวจหาเขตเวลาอัตโนมัติที่ไม่บังคับ ซึ่งทำให้ เพื่อใช้ตำแหน่งเพื่อระบุเขตเวลาปัจจุบัน

บริการ location_time_zone_manager เปิดตัวใน Android 12 ทำงานใน เซิร์ฟเวอร์ของระบบและมีโค้ดที่รับผิดชอบในการส่งตำแหน่ง การแนะนำอัลกอริทึมไปยังบริการ time_zone_detector สำหรับข้อมูลเพิ่มเติม โปรดดู การตรวจหาเขตเวลาของตำแหน่ง

ข้อควรพิจารณาในการใช้ฟีเจอร์

ส่วนนี้จะอธิบายแง่มุมต่างๆ ของฟีเจอร์การตรวจหาเขตเวลาตามตำแหน่งเพื่อ ช่วยให้ผู้ผลิตอุปกรณ์ตัดสินใจได้ว่าจะใช้ฟีเจอร์นี้ในอุปกรณ์หรือไม่

เปรียบเทียบการตรวจจับโทรศัพท์และตำแหน่ง

ตารางต่อไปนี้แสดงการเปรียบเทียบข้อดีและข้อเสียของ โดยใช้ตำแหน่งแทนการใช้สัญญาณโทรศัพท์ในการตรวจหาเขตเวลา

การตรวจจับโทรศัพท์ การตรวจหาตำแหน่ง
ความถูกต้อง แตกต่างกันไปตามประเทศ

ขึ้นอยู่กับความถูกต้องและความพร้อมให้บริการของ MCC ของ NITZ
ขึ้นอยู่กับการกำหนดค่าฟีเจอร์หรือคอมโพเนนต์ของปลั๊กอิน

โดยทั่วไปความถูกต้องจะแตกต่างกันไปตามสิ่งต่อไปนี้
  • ความถูกต้องและความสม่ำเสมอของผู้ให้บริการตำแหน่ง
  • คุณภาพของข้อมูลแผนที่เขตเวลา
ความสามารถในการอัปเดต การตรวจหาโทรศัพท์จะใช้ไฟล์ที่มีอยู่ในเวลาที่อัปเดตได้ โมดูลข้อมูลโซน (com.android.tzdata APEX) ขึ้นอยู่กับการกำหนดค่าฟีเจอร์หรือคอมโพเนนต์ของปลั๊กอิน

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

หมายเหตุ: ข้อมูลแผนที่เขตเวลาไม่อยู่ในเวลา ใช้โมดูลข้อมูลโซนเพื่ออัปเดตสำเนา TZDB ของ Android และเวลาอื่น ข้อมูลโซน

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

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

กล่าวอย่างเจาะจงก็คือ การตรวจหาเขตเวลาจะทำงานผ่านพาสซีฟหรือแบบแอ็กทีฟ หมายถึง

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

การตรวจจับแบบแพสซีฟ เช่น อัลกอริทึมโทรศัพท์ จะไม่มี ผลกระทบต่อความเป็นส่วนตัวของผู้ใช้

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

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

ดูรายละเอียดเพิ่มเติมเกี่ยวกับฟีเจอร์ความเป็นส่วนตัวของผู้ใช้ได้ที่เขตเวลาของตําแหน่ง การตรวจจับ

การกำหนดค่า

ผู้ผลิตอุปกรณ์สามารถกำหนดค่าบริการ time_zone_detector เพื่อเปลี่ยนแปลง ลักษณะการทำงาน ส่วนนี้จะอธิบายตัวเลือกการกำหนดค่าสำหรับ ลักษณะการทำงานของบริการ time_zone_detector สำหรับรายละเอียดการกำหนดค่าสำหรับ อัลกอริทึมการตรวจหาโทรศัพท์และเขตเวลา โปรดดูที่ การตรวจจับเขตเวลาของโทรศัพท์ และ การตรวจหาเขตเวลาของตำแหน่ง

การกำหนดค่า AOSP พื้นฐานอยู่ที่ frameworks/base/core/res/res/values/config.xml

คีย์การกำหนดค่า ค่า AOSP คำอธิบาย
config_supportTelephonyTimeZoneFallback true เมื่อ true, time_zone_detector ใช้โทรศัพท์ โหมดสำรอง ฟีเจอร์นี้พร้อมใช้งานใน Android 13 และสูงกว่า

การเปลี่ยนลักษณะการทำงานเริ่มต้นของอุปกรณ์

ใน AOSP การตรวจหาเขตเวลาอัตโนมัติจะเปิดใช้โดยค่าเริ่มต้นพร้อมด้วย ตั้งค่า auto_time_zone เป็น true วิธีปิดใช้การตรวจหาเวลาอัตโนมัติ โดยค่าเริ่มต้น ให้ตั้งค่า def_auto_time_zone ที่กำหนดไว้ใน วันที่ frameworks/base/packages/SettingsProvider/res/values/defaults.xml ไปยัง false

เมื่อกู้คืนข้อมูลสำรองจากอุปกรณ์อื่น เฟรมเวิร์กจะอัปเดตค่า ของการตั้งค่า auto_time_zone โดยค่าเริ่มต้น หากคุณอยากให้ ไม่ได้คืนค่าการตั้งค่าจากข้อมูลสำรอง ให้ใส่ auto_time_zone ไว้ในส่วน กำหนดอาร์เรย์ restore_blocked_global_settings รายการใน frameworks/base/packages/SettingsProvider/res/values/blocked_settings.xml

การแก้ไขข้อบกพร่องและการทดสอบเขตเวลา

ส่วนนี้ให้ข้อมูลเกี่ยวกับวิธีแก้ไขข้อบกพร่องและทดสอบลักษณะการทำงานของ บริการ time_zone_detector และคอมโพเนนต์อื่นๆ ที่ทุกคนใช้ร่วมกัน อัลกอริทึม

กำหนดค่าอุปกรณ์โดยใช้บริการ device_config

บริการ device_config เป็นกลไกที่ใช้ใน Android เพื่อกำหนดค่า พฤติกรรมที่แก้ไขได้โดยใช้ค่าที่มักจะดึงมาจากเซิร์ฟเวอร์ระยะไกล ตามโค้ดที่เป็นกรรมสิทธิ์ (ไม่ใช่ AOSP) เมื่อใช้ค่า device_config ในการทดสอบ โดยเฉพาะอย่างยิ่งระหว่างการทดสอบด้วยตนเองที่ใช้เวลานาน อุปกรณ์อาจซิงค์ข้อมูล ซึ่งจะรีเซ็ตแฟล็กและล้างค่าที่ตั้งไว้สำหรับการทดสอบ

ใน Android 12 ขึ้นไป เพื่อป้องกันการแจ้งว่าไม่เหมาะสมชั่วคราว การซิงค์ ให้ใช้:

adb shell cmd device_config set_sync_disabled_for_tests persistent

หากต้องการคืนค่าการซิงค์แฟล็กหลังจากการทดสอบ ให้ใช้ปุ่มต่อไปนี้

adb shell cmd device_config set_sync_disabled_for_tests none

หลังจากกู้คืนการซิงค์ข้อมูล Flag ให้รีบูตอุปกรณ์

โปรดดูข้อมูลเพิ่มเติมที่ $ adb shell cmd device_config help

โต้ตอบกับบริการ time_zone_detector

เพื่อดูการกำหนดค่าและสถานะของ time_zone_detector บริการ time_zone_detector ให้ใช้:

adb shell cmd time_zone_detector dump

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

adb shell cmd time_zone_detector help

เอาต์พุตความช่วยเหลือยังอธิบายพร็อพเพอร์ตี้บริการ device_config ที่สามารถ ใช้เพื่อให้ส่งผลต่อลักษณะการทำงานของบริการ time_zone_detector สำหรับการทดสอบ หรือใช้งานจริง โปรดดูรายละเอียดที่หัวข้อ การกำหนดค่าอุปกรณ์โดยใช้บริการ device_config

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

  • ตรวจสอบด้วย UI การตั้งค่า สำหรับข้อมูลเพิ่มเติม โปรดดู การตั้งค่าเขตเวลา
  • ใช้บรรทัดคำสั่งผ่าน adb:

    • หากต้องการถ่ายโอนสถานะ time_zone_detector ให้ใช้ adb shell cmd time_zone_detector dump
    • หากต้องการเปลี่ยนการตั้งค่าอุปกรณ์ ให้ใช้คำสั่งอื่นๆ ของ time_zone_detector โปรดดูข้อมูลเพิ่มเติมที่ adb shell cmd time_zone_detector help

ต่อไปนี้เป็นตัวอย่างของเอาต์พุตจากคำสั่ง adb shell cmd time_zone_detector dump ที่มีข้อมูลเกี่ยวกับ อัลกอริทึมและสถานะของบริการเป็นตัวหนา:

$ adb shell cmd time_zone_detector dump
TimeZoneDetectorStrategy:
  mEnvironment.getCurrentUserId()=0
  mEnvironment.getConfiguration(currentUserId)=ConfigurationInternal{mUserId=0, mUserConfigAllowed=true, mTelephonyDetectionSupported=true, mGeoDetectionSupported=true, mAutoDetectionEnabled=true, mLocationEnabled=true, mGeoDetectionEnabled=true}
  [Capabilities=TimeZoneCapabilitiesAndConfig{mCapabilities=TimeZoneDetectorCapabilities{mUserHandle=UserHandle{0}, mConfigureAutoDetectionEnabledCapability=40, mConfigureGeoDetectionEnabledCapability=40, mSuggestManualTimeZoneCapability=30}, mConfiguration=TimeZoneConfiguration{mBundle=Bundle[{geoDetectionEnabled=true, autoDetectionEnabled=true}]}}]
  mEnvironment.isDeviceTimeZoneInitialized()=true
  mEnvironment.getDeviceTimeZone()=Europe/London
  Time zone change log:
  Manual suggestion history:
...
  Geolocation suggestion history:
...
  Telephony suggestion history:
...

ข้อมูลสามารถตีความได้ดังนี้

คีย์ ค่า
mUserConfigAllowed ป้องกันไม่ให้ผู้ใช้ควบคุมการตั้งค่าวันที่และเวลาโดย เครื่องมือควบคุมนโยบายด้านอุปกรณ์
mTelephonyDetectionSupported ระบุว่าอุปกรณ์มีการตรวจหาเขตเวลาของโทรศัพท์หรือไม่
mGeoDetectionSupported ระบุว่าอุปกรณ์รองรับการตรวจหาเขตเวลาของตำแหน่งหรือไม่ นี่คือ สถานะ effective ตามการกำหนดค่าและการแสดงข้อมูล ของ LTZP อย่างน้อย 1 รายการ
mAutoDetectionEnabled การตรวจหาเขตเวลาอัตโนมัติเปิดใช้อยู่
mLocationEnabled สลับตําแหน่งหลัก
mGeoDetectionEnabled การเปลี่ยนอัลกอริทึม: false ระบุอัลกอริทึมโทรศัพท์ และ true จะระบุอัลกอริทึมของสถานที่

ข้อมูลประวัติคำแนะนำจะแสดงคำแนะนำที่มีผู้เสนอ ผ่านการตั้งค่า (ด้วยตนเอง) รวมถึงอัลกอริทึมโทรศัพท์และตำแหน่ง