【问题标题】:Android Google Fit get basic info (Gender, Height, Weight)Android Google Fit 获取基本信息(性别、身高、体重)
【发布时间】:2017-09-21 18:18:14
【问题描述】:

几天以来,我一直在为 Android 开发 Google fit 集成,但遇到了困难。我需要从 google fit 获取身高、体重和性别数据。通过使用以下数据类型进行查询,我可以成功地从 google fit 获取用户的身高和体重

 DataReadRequest readRequest = new DataReadRequest.Builder()
                               .read(DataType.TYPE_WEIGHT)
                               .read(DataType.TYPE_HEIGHT)
                               .setLimit(1)
                               .setTimeRange(1, currentTime, TimeUnit.MILLISECONDS)
                               .build();

但未能获得用户性别的详细信息。我正在浪费大量时间来弄清楚这一点。我想至少知道从 Google Fit 中获取性别是不可能的。

提前致谢。

【问题讨论】:

    标签: android google-fit google-fit-sdk


    【解决方案1】:

    恐怕谷歌目前还没有为性别提供预定义的DataType。他们可能会在即将到来的更新中提供支持。 对于所有 Google Fit 数据类型,fields 有四种类型。 您无需花费大量时间进行研究即可查看数据类型列表here

    我至少想知道,从 Google fit 获取性别是不可能的。

    这可以通过Custom data types 实现。

    1. 为您的自定义数据类型构建请求
    2. 使用 Google API 客户端对象调用 Config API
    3. 异步检查结果

    下面的示例代码供您参考:

        GoogleApiClient client = new GoogleApiClient.Builder(context)
         .addApi(Fitness.CONFIG_API)
         ... .build();
         client.connect();
    
         PendingResult<DataTypeResult> pendingResult = Fitness.ConfigApi.readDataType(
             client, "com.example.my_custom_data_type");
    
         DataTypeResult dataTypeResult = pendingResult.await();
         DataType dataType = dataTypeResult.getDataType();
    

    【讨论】:

    • 嘿,我的理解是您建议我构建一个自定义数据类型并将性别写入该数据类型并在需要时从中读取。
    • 没错,您只需要在创建规则时牢记某些规则。
    • @Anurag,你能简单解释一下吗?我会写什么而不是“com.example.my_custom_data_type”来从 google fit 中检索性别和出生日期..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多