感應器資料的獨特來源定義。資料來源可能會公開本機或隨附裝置上硬體感應器產生的原始資料。此外,他們也可以公開衍生資料,也就是轉換或合併其他資料來源建立的衍生資料。同一個資料類型可以有多個資料來源。凡是在這項服務中插入或讀取的資料點,都會有相關聯的資料來源。
資料來源包含足夠的資訊可明確識別資料,包括硬體裝置以及收集和/或轉換資料的應用程式。其中也會保存實用的中繼資料,例如硬體與應用程式版本以及裝置類型。
每個資料來源都會透過專屬 ID 產生不重複的資料串流,並非所有對資料來源所做的變更都會影響串流 ID,因此即使應用程式/裝置的更新版本收集到資料,系統還是可以視為屬於同一個資料串流。
如需本資源的方法清單,請見本頁結尾。
資源表示法
{ "dataStreamId": string, "name": string, "dataStreamName": string, "type": string, "dataType": { "name": string, "field": [ { "name": string, "format": string, "optional": boolean } ] }, "device": { "uid": string, "type": string, "version": string, "model": string, "manufacturer": string }, "application": { "packageName": string, "version": string, "detailsUrl": string, "name": string }, "dataQualityStandard": [ string ] }
屬性名稱 | 值 | 說明 | 附註 |
---|---|---|---|
application |
nested object |
提供將感應器資料饋送至平台的應用程式相關資訊。 | |
application.detailsUrl |
string |
非必要的 URI,可用來連結至應用程式。 | |
application.name |
string |
這個應用程式的名稱。這對於 REST 用戶端來說是必要項目,但是我們不會強制規定這個名稱。為方便其他開發人員找出建立應用程式或資料來源的 REST 版本,這項資料可以派上用場。 | |
application.packageName |
string |
這個應用程式的套件名稱。在 Android 應用程式建立時,這個 ID 會用來當做專屬 ID,但 REST 用戶端無法指定。REST 用戶端會在資料來源資料串流 ID 中顯示開發人員專案編號,而不是 packageName。 | |
application.version |
string |
應用程式的版本。每當應用程式以會影響資料運算的方式變更時,您就應該更新這個欄位。 | |
dataQualityStandard[] |
list |
請勿填入這個欄位。從平台回應不會填入這個值,查詢時也會忽略。我們會在日後的版本中完全移除這個程式庫。 | |
dataStreamId |
string |
這個資料來源產生的資料串流專屬 ID。ID 包括:
Android 應用程式建立的資料串流 ID 格式如下:type:dataType.name REST 用戶端建立的資料串流 ID 確切格式為:type:dataType.name 如果沒有構成資料串流 ID 的任何選填欄位,系統會將這些欄位從資料串流 ID 中省略。最小可行的資料串流 ID 如下:type:dataType.name:developer 專案編號 最後,任何未建立資料來源的 REST 或 Android 用戶端讀取時,開發人員專案編號和裝置 UID 都會經過模糊處理。只有資料來源建立者,才會看到開發人員專案編號,以清楚一般的形式呈現。這表示用戶端會看到一組不同的 data_stream_ids,也只會看到其他使用不同憑證的用戶端。 |
|
dataStreamName |
string |
串流名稱會在相同基礎製作者提供的其他相同類型的資料來源中,明確識別這個特定資料來源。雖然設定串流名稱並非必要,但每當應用程式公開相同資料類型的兩個串流,或裝置具備兩個對等的感應器時,您就應該設定串流名稱。 | |
dataType |
nested object |
資料類型定義了透過 Fitness API 收集、插入或查詢資料串流的結構定義。 | |
dataType.field[] |
list |
欄位代表資料類型的一個維度。 | |
dataType.field[].format |
string |
資料類型中每個欄位的不同支援格式。
可接受的值為:
|
|
dataType.field[].name |
string |
定義資料的名稱和格式。與資料類型名稱不同的是,欄位名稱並非命名空間,而且只需在資料類型中不得重複。 | |
dataType.field[].optional |
boolean |
||
dataType.name |
string |
每種資料類型都有不重複的命名空間名稱com.google 命名空間中的所有資料類型都屬於這個平台, | |
device |
nested object |
表示可容納感應器的整合式裝置 (例如手機或穿戴式裝置)。 | |
device.manufacturer |
string |
產品/硬體的製造商。 | |
device.model |
string |
使用者可見的裝置型號名稱。 | |
device.type |
string |
代表裝置類型的常數。
可接受的值為:
|
|
device.uid |
string |
硬體的序號或其他專屬 ID。任何未建立資料來源的 REST 或 Android 用戶端讀取時,這個欄位會模糊處理。只有資料來源建立者才會看到清楚一般格式的 uid 欄位。 此模糊處理可維持相等性;也就是兩個 ID。如果 id1 == id2,obfuscated(id1) == obfuscated(id2)。 |
|
device.version |
string |
裝置硬體/軟體的版本字串。 | |
name |
string |
這個資料來源的使用者可見名稱。 | |
type |
string |
說明這個資料來源類型的常數。指出這個資料來源會產生原始或衍生的資料。
可接受的值為:
|
方法
- 建立
- 新建的資料來源在所有隸屬的資料來源中都沒有重複
提供給該使用者
資料來源是感應器資料的獨特來源。資料來源 來自本機或隨附裝置的硬體感應器的原始資料。他們 也可以公開因轉換或合併其他資料而建立的衍生資料 資料來源同一個資料類型可以有多個資料來源。所有資料 插入或讀取 Fitness API 的每個資料集都有一個資料點 相關的資料來源
每個資料來源都會產生不重複的資料集更新串流, 不重複的資料來源 ID並非所有資料來源變更都會影響 資料串流 ID,讓新版相同 應用程式/裝置仍可視為相同的資料 來源。
系統會使用伺服器產生的字串辨識資料來源, 專屬於要建立來源的內容dataStreamId
欄位不得在叫用這個方法時設定。這項服務 是由伺服器自動產生正確的格式。如果 已設定dataStreamId
,且必須符合 產生的值這種格式是 且具有特定順序如果不相符 就會失敗,並顯示錯誤。
指定非已知類型的 DataType (開頭為 「com.google.」),建立含有自訂資料類型的 DataSource。 只有建立自訂資料類型的應用程式才能讀取。 自訂資料類型已淘汰;使用標準資料類型 。
除了資料來源 ID 中包含的資料來源欄位以外, 開發人員專案編號;這是在建立資料時通過驗證的開發人員專案編號 來源。讀取時,這個開發人員專案編號會經過模糊處理 其他任何開發人員讀取公開資料類型的情況 - 刪除
- 刪除指定的資料來源。如果資料擷取作業包含 來源包含任何資料點
- 取得
- 傳回指定資料來源。
- list
- 列出開發人員可使用 OAuth 取得的所有資料來源 範圍。請注意,這份清單中僅列出部分示例。含有私人資訊的使用者 只有其他開發人員看得到的資料來源 和其他範圍
- 更新
- 更新指定資料來源。
dataStreamId
dataType
、type
、dataStreamName
和device
屬性 (version
除外), 無法修改。
資料來源由其「dataStreamId
」識別。