我正在尝试从服务中访问Android智能手表中的google fit数据。为此,我使用com.google.android.gms:play-services-fitness:7.5.0和GoogleApiClient进行连接:
mGoogleApiClient = new GoogleApiClient.Builder(getApplicationContext())
.addApi(Fitness.HISTORY_API)
.useDefaultAccount()
//.setAccountName("xxxxxxxxxx@gmail.com")
.addConnectionCallbacks(
new GoogleApiClient.ConnectionCallbacks() {
....etc..
....etc..
如果我在setAccountName中使用我自己的电子邮件硬编码(与我用于手机的相同帐户并与智能手表配对),那么它可以正常工作。我与成功和功能相关联Fitness.HistoryApi.readDailyTotal正确返回步数。
如果我使用useDefaultAccount(),那么我也与成功相关联,但Fitness.HistoryApi.readDailyTotal返回0步。
如何在代码中为setAcountName()方法或useDefaultAccount()方法正确获取帐户名?为了使其正常工作,我在这里缺少什么?
答案 0 :(得分:0)
根据官方GFit documentation,您可以使用简单的GET请求获取帐户名称。
GET https://www.googleapis.com/fitness/v1/users/userId/dataSources/dataSourceId
dataSourceId
和userId
将是导致获取帐户名称的两个必需参数。