通訊協定
PropertyProvider
如 fuchsia.intl/property_provider.fidl
提供國際化屬性。
需要變更行為以回應使用者的國際化設定檔的元件,可以向其命名空間要求這項服務的例項 (如有)。元件可以選擇將父項從父項收到的服務傳遞至自己的子項,或是覆寫該元件並套用其他自訂項目。
另請參閱 fuchsia.ui.views.View。
GetProfile
取得使用者的國際化設定檔。
要求
<EMPTY>
回應
| 名稱 | 類型 | 
|---|---|
| profile | Profile | 
OnChange
表示屬性可能已變更,而用戶端應重新查詢。
回應
<EMPTY>
TimeZones
定義於 fuchsia.intl/time_zones.fidl
提供時區相關資訊,並提供日期時間轉換方法。
TODO(https://fxbug.dev/42162409):新增時區資訊方法,包括與世界標準時間的偏移值。
AbsoluteToCivilTime
使用公曆將指定絕對時間轉換為指定時區的民用日期和時間。
要求
| 名稱 | 類型 | 
|---|---|
| time_zone_id | TimeZoneId | 
| absolute_time | zx/Time | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | TimeZones_AbsoluteToCivilTime_Result | 
CivilToAbsoluteTime
將指定時區的指定民用日期和時間轉換為自 Unix 紀元以來的奈秒。
要求
| 名稱 | 類型 | 
|---|---|
| civil_time | CivilTime | 
| options | CivilToAbsoluteTimeOptions | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | TimeZones_CivilToAbsoluteTime_Result | 
GetTimeZoneInfo
擷取指定時區的詳細資料。
要求
| 名稱 | 類型 | 
|---|---|
| time_zone_id | TimeZoneId | 
| at_time | zx/Time | 
回應
| 名稱 | 類型 | 
|---|---|
| payload | TimeZones_GetTimeZoneInfo_Result | 
結構化
CalendarId
單一日曆系統的輸入 ID。目前只能包含日曆 ID。
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| id | string | 含有未定義語言標記的 Unicode BCP-47 語言代碼 ID,以及指定日曆 ID 的單一擴充功能 (來自 https://unicode.org/repos/cldr/中繼/common/bcp47/calendar.xml)。 範例:「und-u-ca-gregory」 「und-u-ca-islamic」 | 無預設 | 
LocaleId
單一語言代碼的輸入 ID,這是一組國際化相關屬性。
大多數使用語言代碼的 API 可能會想接受向量語言代碼,以便將優先順序納入考量。
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| id | string | Unicode BCP-47 語言代碼 ID (http://www.unicode.org/reports/tr35/#BCP_47_Conformance)。 必須經過標準化且格式正確。這個欄位不應從任意使用者或第三方輸入內容填入,而應改為透過程式輔助方式產生。 包括語言、地區、指令碼和變化版本,以及萬國碼 (Unicode) 副檔名 (位於「u」單例中)。系統允許使用其他擴充功能,但會略過。 範例: "en-US" 美式英文 "fr-u-hc-h12" 法文 (含 12 小時制) 「ar-EG-u-fw-mon-nu-latn」 埃及阿拉伯文 (含「拉丁」數字和星期一的第一天) | 無預設 | 
TimeZoneId
輸入的時區 ID。
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| id | string | tzdata 的時區 ID,例如「America/New_York」。詳情請參閱 https://www.iana.org/time-zones。 | 無預設 | 
TimeZones_AbsoluteToCivilTime_Response
定義於 fuchsia.intl/time_zones.fidl
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| civil_time | CivilTime | 無預設 | 
TimeZones_CivilToAbsoluteTime_Response
定義於 fuchsia.intl/time_zones.fidl
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| absolute_time | zx/Time | 無預設 | 
TimeZones_GetTimeZoneInfo_Response
定義於 fuchsia.intl/time_zones.fidl
| 欄位 | 類型 | 說明 | 預設 | 
|---|---|---|---|
| time_zone_info | TimeZoneInfo | 無預設 | 
ENUMS
DayOfWeek 嚴格
類型:uint8
定義於 fuchsia.intl/calendar.fidl
星期幾的列舉。
| 名稱 | 值 | 說明 | 
|---|---|---|
| 星期日 | 1 | |
| 星期一 | 2 | |
| 星期二 | 3 | |
| 星期三 | 4 | |
| 星期四 | 5 | |
| 星期五 | 6 | |
| 星期六 | 7 | 
月份嚴格
類型:uint8
定義於 fuchsia.intl/calendar.fidl
一年中的月份列舉。
| 名稱 | 值 | 說明 | 
|---|---|---|
| 1 月 | 1 | |
| 2 月 | 2 | |
| 3 月 | 3 | |
| 4 月 | 4 | |
| 5 月 | 5 | |
| 6 月 | 6 | |
| 7 月 | 7 | |
| 8 月 | 8 | |
| 9 月 | 9 | |
| 10 月 | 10 | |
| 11 月 | 11 | |
| 12 月 | 12 | 
RepeatedTimeConversion 彈性
類型:int32
定義於 fuchsia.intl/time_zones.fidl
在從日光節約時間轉換至標準時間 (時鐘方向反轉) 期間,民用時間可能會對應至兩個可能的絕對時間。這項設定可決定轉換期間應將這些時間假設到絕對時間。
TODO(https://fxbug.dev/42162861):實作 AFTER_TRANSITION。
| 名稱 | 值 | 說明 | 
|---|---|---|
| BEFORE_TRANSITION | 1 | 傳回轉換前的實際時鐘時間。 舉例來說,在秋季之夜的「America/New_York」轉換為標準時間時, | 
SkippedTimeConversion 彈性
類型:int32
定義於 fuchsia.intl/time_zones.fidl
在標準時間從標準時間轉換至日光節約時間 (時間向前) 期間,系統會略過民間時段 (通常是一小時)。這項設定會決定應如何處理這個 Span 中的無效民用時間。
TODO(https://fxbug.dev/42162861):實作 BEFORE_TRANSITION 和 AFTER_TRANSITION。
| 名稱 | 值 | 說明 | 
|---|---|---|
| 拒絕 | 1 | 嘗試轉換略過的民用時間時,會傳回  | 
| NEXT_VALID_TIME | 2 | 傳回要求時間之後的最接近的有效時間。 例如,在春天轉換為日光節約時間的「America/New_York」中並不存在  | 
溫度單位嚴格
類型:uint32
選擇溫度單位。
| 名稱 | 值 | 說明 | 
|---|---|---|
| 好奇 | 0 | 溫度設定格式應以攝氏度數顯示。 | 
| 時尚 | 1 | 溫度設定格式應以華氏度數顯示。 | 
TimeZonesError 彈性
類型:int32
定義於 fuchsia.intl/time_zones.fidl
| 名稱 | 值 | 說明 | 
|---|---|---|
| INTERNAL_ERROR | 1 | 服務發生內部錯誤。 | 
| UNKNOWN_TIME_ZONE | 2 | 要求的時區 ID 無效。 | 
| INVALID_DATE | 3 | 提供的日期超出範圍或無效。 | 
資料表
CivilTime
定義於 fuchsia.intl/time_zones.fidl
說明公曆 (希臘) 的時間,精確度高達奈秒。這與 C 標準程式庫中 time.h 中的 tm 結構大致相同,屬於用於列印或剖析日期的結構化中繼格式。
| 序數 | 欄位 | 類型 | 說明 | 
|---|---|---|---|
| 1 | year | uint16 | 年度 ( | 
| 2 | month | Month | 月份。 | 
| 3 | day | uint8 | 當月第幾天的封閉範圍為  | 
| 4 | hour | uint8 | 一天內的時段,位於封閉範圍  | 
| 5 | minute | uint8 | 已關閉範圍 ( | 
| 6 | second | uint8 | 分鐘數的秒數,位於封閉範圍  (請注意,Fusia 目前在轉換日期時不會計算閏秒)。 | 
| 7 | nanos | uint64 | 奈秒的封閉範圍為  | 
| 8 | weekday | DayOfWeek | 星期幾。 | 
| 9 | year_day | uint16 | 一年中的日間休息範圍 ( | 
| 10 | time_zone_id | TimeZoneId | 與這個時間相對應的時區。如果省略,則預設值為世界標準時間。 | 
CivilToAbsoluteTimeOptions
定義於 fuchsia.intl/time_zones.fidl
「TimeZones.CivilToAbsoluteTime」的選項。
| 序數 | 欄位 | 類型 | 說明 | 
|---|---|---|---|
| 1 | repeated_time_conversion | RepeatedTimeConversion | 用於處理回溯日光節約時間轉換期間重複時間的選用設定。 預設值: | 
| 2 | skipped_time_conversion | SkippedTimeConversion | 用於處理日光節約時間轉換時略過時間的選用設定。 預設值: | 
Profile
一系列經過排名的國際化房地產。
此資訊沒有隱含來源;可能來自使用者帳戶、裝置設定、使用者設定和應用程式專屬覆寫的綜合資料,或是任何其他來源。
Unicode BCP-47 語言代碼 ID 支援的語言獨立屬性 (例如一週的第一天、時區) 會反正規化為 locales 中的語言代碼 ID。
| 序數 | 欄位 | 類型 | 說明 | 
|---|---|---|---|
| 1 | locales | vector<LocaleId> | 語言代碼清單 (依偏好順序遞減排序)。向量一律會設定,且一律包含至少一個元素。舉例來說,locales = [ LocaleId("en-US") ] 有效,但語言代碼 = [] 或語言代碼 =  | 
| 2 | calendars | vector<CalendarId> | 日曆清單排序 (依偏好由高至低排序)。
第一個項目是主要日曆,且等於  | 
| 3 | time_zones | vector<TimeZoneId> | 時區清單 (遞減排序)。第一個項目是主要時區,應依預設用於設定日期和時間的格式;它等同於  | 
| 4 | temperature_unit | TemperatureUnit | 選取的溫度單位。系統一律會回報單位:如果目前環境中沒有設定,則會使用 CELSIUS 的預設值。 | 
RegulatoryDomain
依 IEEE 802.11 標準指定的規定網域輸入的 ID。
| 序數 | 欄位 | 類型 | 說明 | 
|---|---|---|---|
| 1 | country_code | string | ISO 3166-1 alpha-2,由兩個字母組成的代碼,代表作業網域。(https://www.iso.org/publication/PUB500001.html) | 
TimeZoneInfo
定義於 fuchsia.intl/time_zones.fidl
說明特定時間點的時區屬性。
TODO(https://fxbug.dev/42162409):提供偏移值和 DST 狀態細目的額外欄位。
| 序數 | 欄位 | 類型 | 說明 | 
|---|---|---|---|
| 1 | id | TimeZoneId | 時區的 IANA ID。 | 
| 2 | total_offset_at_time | zx/Duration | 總偏移量 (如果時區是日光節約時間,如果時區為日光節約時間,則在查詢時間 ( | 
| 3 | in_dst_at_time | bool | 表示時區是否為查詢時間的日光節約時間 ( | 
聯合國
TimeZones_AbsoluteToCivilTime_Result 嚴格
定義於 fuchsia.intl/time_zones.fidl
| 序數 | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | TimeZones_AbsoluteToCivilTime_Response | |
| 2 | err | TimeZonesError | 
TimeZones_CivilToAbsoluteTime_Result 嚴格
定義於 fuchsia.intl/time_zones.fidl
| 序數 | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | TimeZones_CivilToAbsoluteTime_Response | |
| 2 | err | TimeZonesError | 
TimeZones_GetTimeZoneInfo_Result 嚴格
定義於 fuchsia.intl/time_zones.fidl
| 序數 | Variant | 類型 | 說明 | 
|---|---|---|---|
| 1 | response | TimeZones_GetTimeZoneInfo_Response | |
| 2 | err | TimeZonesError | 
業者
| 名稱 | 值 | 類型 | 說明 | 
|---|---|---|---|
| DEFAULT_TIME_ZONE_ID | UTC | String | 這是未設定時區時回報的時區。 |