我正在尝试从适用于Android的Google Fit api中读取生殖健康数据(月经),但由于目前尚无要读取的数据,因此我无法对其进行测试,因此我决定将数据写入应用中,但事实并非如此不好这是我的代码:我在setDataType(HealthDataTypes.TYPE_MENSTRUATION)上遇到错误:必须设置数据源类型
DataSource menstruationSource = new DataSource.Builder()
.setDataType(HealthDataTypes.TYPE_MENSTRUATION)
.build();
DataSet dataSet = DataSet.create(menstruationSource);
DataPoint bloodPressure = DataPoint.builder(menstruationSource)
.setTimestamp(System.currentTimeMillis(), TimeUnit.MILLISECONDS)
.setField(HealthFields.FIELD_MENSTRUAL_FLOW, HealthFields.MENSTRUAL_FLOW_MEDIUM)
.build();
dataSet.add(bloodPressure);
Object dataReadResult = Fitness.HistoryApi.insertData(googleFitManager.getGoogleApiClient(), dataSet);
这是说您需要设置数据源的类型(不仅仅是数据类型):
new DataSource.Builder()
.setDataType(HealthDataTypes.TYPE_MENSTRUATION)
.setType(DataSource.TYPE_RAW) // <-- THIS
((我并不声称这足以创建它;仅是,这就是错误消息说您应该这样做)。
但是menstruation is a restricted data type。为了能够访问这些数据类型,您的应用需要经过特殊验证。
如注所述:
Google暂时停止接受新请求以写入受限数据类型。我们正在更新审核请求的政策和流程,并将在恢复时再次更新此文档。