我正在开发用于腕带设备的Android应用程序,并且此设备具有特定的BLE协议,Google Fit无法直接使用它。 我添加到我的应用程序Google Fit HistoryAPI,现在当我从设备接收步数,距离,卡路里时,我通过API使用这样的代码将其存储在Fit服务器中
DataSource DSTEP_SOURCE = new DataSource.Builder()
.setAppPackageName(App.mContext.getPackageName())
.setDataType(DataType.TYPE_STEP_COUNT_DELTA)
.setName("GeekFit Steps")
.setStreamName("GeekFit Steps")
.setType(DataSource.TYPE_RAW)
.build();
// Steps data
DataSet dataSet = DataSet.create(DSTEP_SOURCE);
DataPoint dataPoint = dataSet.createDataPoint();
dataPoint.setTimestamp(sport.getTimestamp(), TimeUnit.MILLISECONDS);
dataPoint.getValue(Field.FIELD_STEPS).setInt(sport.getSteps() - lastSport.getSteps());
dataSet.add(dataPoint);
Log.i(TAG, "Inserting the dataset in the History API");
com.google.android.gms.common.api.Status insertStatus =
Fitness.HistoryApi.insertData(mClient, dataSet).await(1, TimeUnit.MINUTES);
// Before querying the data, check to see if the insertion succeeded.
if (!insertStatus.isSuccess()) {
Log.i(TAG, "There was a problem inserting the dataset.");
return null;
}
Log.i(TAG, "Fit insert Success!");
我有成功的回调,但无法在Google健身应用中找到插入的数据,只需查看移动设备计算的步骤即可。
我做错了什么?