ดัชนี
วันที่
แสดงวันที่ในปฏิทินทั้งหมดหรือบางส่วน เช่น วันเกิด เวลาของวันและเขตเวลาจะระบุไว้ที่อื่นหรือไม่มีนัยสำคัญ วันที่สัมพันธ์กับปฏิทินเกรกอเรียน ซึ่งอาจแสดงถึงสิ่งใดสิ่งหนึ่งต่อไปนี้
- วันที่แบบเต็ม โดยมีค่าปี เดือน และวันที่ที่ไม่ใช่ 0
- เดือนและวัน โดยมีปีเป็น 0 (เช่น วันครบรอบ)
- ปีอย่างเดียว โดยมีเดือนและวันที่เป็น 0
- ปีและเดือน โดยมีวันที่เป็น 0 (เช่น วันหมดอายุของบัตรเครดิต)
ประเภทที่เกี่ยวข้อง
google.type.TimeOfDaygoogle.type.DateTimegoogle.protobuf.Timestamp
| ช่อง | |
|---|---|
year |
ปีของวันที่ ต้องอยู่ระหว่าง 1 ถึง 9999 หรือ 0 เพื่อระบุวันที่โดยไม่มีปี |
month |
เดือนของปี ต้องมีค่าระหว่าง 1 ถึง 12 หรือ 0 เพื่อระบุปีโดยไม่มีเดือนและวัน |
day |
วันของเดือน ต้องมีค่าตั้งแต่ 1 ถึง 31 และใช้ได้กับปีและเดือน หรือ 0 เพื่อระบุปีอย่างเดียว หรือปีและเดือนที่ไม่มีวัน |
DateTime
แสดงเวลาทั่วไป (หรือบางครั้งก็เวลาจริง)
ประเภทนี้แสดงเวลาพลเรือนได้หลายวิธีดังนี้
- เมื่อตั้งค่า utc_offset และไม่ได้ตั้งค่า time_zone: เวลาพลเรือนในวันปฏิทินที่มีค่าชดเชยจาก UTC ที่เฉพาะเจาะจง
- เมื่อตั้งค่า time_zone และไม่ได้ตั้งค่า utc_offset: เวลาตามปฏิทินในเขตเวลาที่เฉพาะเจาะจง
- เมื่อไม่ได้ตั้งค่าทั้ง time_zone และ utc_offset: เวลาพลเรือนในวันตามปฏิทินในเวลาท้องถิ่น
วันที่สัมพันธ์กับปฏิทินเกรกอเรียนแบบย้อนหลัง
หากปี เดือน หรือวันเป็น 0 ระบบจะถือว่า DateTime ไม่มีปี เดือน หรือวันตามลำดับ
นอกจากนี้ยังอาจใช้ประเภทนี้เพื่อแสดงเวลาจริงได้หากตั้งค่าฟิลด์วันที่และเวลาทั้งหมด และตั้งค่ากรณีใดกรณีหนึ่งของ time_offset oneof ลองใช้ข้อความ Timestamp สำหรับเวลาจริงแทน หากกรณีการใช้งานของคุณต้องการจัดเก็บเขตเวลาของผู้ใช้ด้วย คุณสามารถทำได้ในช่องอื่น
ประเภทนี้มีความยืดหยุ่นมากกว่าที่แอปพลิเคชันบางอย่างอาจต้องการ โปรดบันทึกและตรวจสอบข้อจำกัดของแอปพลิเคชัน
| ช่อง | |
|---|---|
year |
ไม่บังคับ ปีของวันที่ ต้องอยู่ระหว่าง 1 ถึง 9999 หรือ 0 หากระบุวันที่และเวลาโดยไม่มีปี |
month |
ไม่บังคับ เดือนของปี ต้องมีค่าระหว่าง 1 ถึง 12 หรือ 0 หากระบุวันที่และเวลาโดยไม่มีเดือน |
day |
ไม่บังคับ วันของเดือน ต้องอยู่ระหว่าง 1 ถึง 31 และถูกต้องสำหรับปีและเดือน หรือ 0 หากระบุวันที่และเวลาโดยไม่มีวัน |
hours |
ไม่บังคับ ชั่วโมงของวันในรูปแบบ 24 ชั่วโมง ควรอยู่ระหว่าง 0 ถึง 23 โดยค่าเริ่มต้นคือ 0 (เที่ยงคืน) API อาจเลือกอนุญาตค่า "24:00:00" สำหรับสถานการณ์ต่างๆ เช่น เวลาปิดทำการของธุรกิจ |
minutes |
ไม่บังคับ นาทีของชั่วโมงของวัน ต้องมีค่าระหว่าง 0 ถึง 59 โดยค่าเริ่มต้นคือ 0 |
seconds |
ไม่บังคับ วินาทีของนาทีของเวลา โดยปกติแล้วต้องอยู่ระหว่าง 0 ถึง 59 ค่าเริ่มต้นคือ 0 API อาจอนุญาตค่า 60 หากอนุญาตให้ใช้ลิปวินาที |
nanos |
ไม่บังคับ เศษส่วนของวินาทีในหน่วยนาโนวินาที ต้องมีค่าระหว่าง 0 ถึง 999,999,999 โดยค่าเริ่มต้นคือ 0 |
ฟิลด์ Union time_offset ไม่บังคับ ระบุค่าชดเชยเวลา UTC หรือเขตเวลาของ DateTime โปรดเลือกอย่างรอบคอบโดยคำนึงถึงว่าข้อมูลเขตเวลาอาจมีการเปลี่ยนแปลงในอนาคต (เช่น ประเทศหนึ่งๆ แก้ไขวันที่เริ่มต้น/สิ้นสุดของ DST และระบบได้จัดเก็บ DateTime ในอนาคตในช่วงที่ได้รับผลกระทบไว้แล้ว) หากไม่ระบุ ระบบจะถือว่า DateTime เป็นเวลาท้องถิ่น time_offset ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น |
|
utc_offset |
ความต่างเวลา UTC ต้องเป็นจำนวนเต็มวินาทีระหว่าง -18 ชั่วโมงถึง +18 ชั่วโมง เช่น ออฟเซ็ต UTC ที่ -4:00 จะแสดงเป็น { seconds: -14400 } |
time_zone |
เขตเวลา |
ช่วงเวลา
แสดงช่วงเวลาที่เข้ารหัสเป็นเวลาเริ่มต้นของการประทับเวลา (รวม) และเวลาสิ้นสุดของการประทับเวลา (ไม่รวม)
ค่าเริ่มต้นต้องน้อยกว่าหรือเท่ากับค่าสิ้นสุด เมื่อเวลาเริ่มต้นเท่ากับเวลาสิ้นสุด ช่วงเวลาจะว่างเปล่า (ไม่ตรงกับเวลาใดๆ) เมื่อไม่ได้ระบุทั้งจุดเริ่มต้นและจุดสิ้นสุด ช่วงเวลาจะตรงกับเวลาใดก็ได้
| ช่อง | |
|---|---|
start_time |
ไม่บังคับ จุดเริ่มต้นของช่วงเวลา (รวมวันที่เริ่มต้น) หากมีการระบุ การประทับเวลาที่ตรงกับช่วงเวลานี้จะต้องเป็นเวลาเดียวกันหรือหลังจากเวลาเริ่มต้น |
end_time |
ไม่บังคับ จุดสิ้นสุดของช่วงเวลา (ไม่รวมวันที่สิ้นสุด) หากระบุไว้ การประทับเวลาที่ตรงกับช่วงเวลานี้จะต้องอยู่ก่อนสิ้นสุด |
LatLng
ออบเจ็กต์ที่แสดงคู่ละติจูด/ลองจิจูด โดยจะแสดงเป็นคู่ของ Double เพื่อแสดงองศาละติจูดและองศาลองจิจูด ออบเจ็กต์นี้ต้องเป็นไปตาม มาตรฐาน WGS84 เว้นแต่จะระบุไว้เป็นอย่างอื่น ค่าต้องอยู่ในช่วงที่ทำให้เป็นปกติ
| ช่อง | |
|---|---|
latitude |
ละติจูดเป็นองศา ต้องอยู่ในช่วง [-90.0, +90.0] |
longitude |
ลองจิจูดในหน่วยองศา ต้องอยู่ในช่วง [-180.0, +180.0] |
LocalizedText
ข้อความในภาษาหนึ่งๆ ที่มีการแปล
| ช่อง | |
|---|---|
text |
สตริงที่แปลแล้วในภาษาที่สอดคล้องกับ |
language_code |
รหัสภาษา BCP-47 ของข้อความ เช่น "en-US" หรือ "sr-Latn" ดูข้อมูลเพิ่มเติมได้ที่ http://www.unicode.org/reports/tr35/#Unicode_locale_identifier |
TimeZone
แสดงเขตเวลาจากฐานข้อมูลเขตเวลาของ IANA
| ช่อง | |
|---|---|
id |
เขตเวลาของฐานข้อมูลเขตเวลาของ IANA เช่น "America/New_York" |
version |
ไม่บังคับ หมายเลขเวอร์ชันของฐานข้อมูลเขตเวลา IANA เช่น "2019a" |