微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从 Google Fit 获取心率值时,PlatformException(FitKit, 5000: 应用程序需要用户的 OAuth 同意,null,null)

如何解决从 Google Fit 获取心率值时,PlatformException(FitKit, 5000: 应用程序需要用户的 OAuth 同意,null,null)

我正在尝试使用以下代码从 Google Fit 获取心率数据:

void addBPM(List<FitData> results) {
    setState(() {
      results.where((data) => !data.userEntered).forEach((result) =>
      _heartBPM = result.value.round());
    });
  }

  void clearBPM() {
    setState(() {
      _heartBPM = 0;
    });
  }

  void revokePermissions() async {
    try {
      await FitKit.revokePermissions();
      permissions = await FitKit.hasPermissions(DataType.values);
      print('revokePermissions: success');
    } catch (e) {
      print('revokePermissions: $e');
    }
  }

  void read() async {
    try {
      permissions = await FitKit.requestPermissions(DataType.values);
      if (!permissions) {
        print('requestPermissions: Failed');
        setState(() {
          bodyHBPM = '0';
        });
      } else {
        if(await FitKit.requestPermissions(DataType.values)){
          final Now = DateTime.Now();
          final startOfDay = DateTime(Now.year,Now.month,Now.day);
          final results = await FitKit.read(
            DataType.HEART_RATE,dateFrom: startOfDay,dateto: Now,);
          startTimer();
          // print(results);
          clearBPM();
          addBPM(results);
        }

        print('readAll: success');
      }
    } catch (e) {
      print('readAll: $e');
    }
  }

一周前它成功了,直到我今天再次运行并出现此错误

readAll: PlatformException(FitKit,5000: Application needs OAuth consent from the user,null,null)

我错过了什么? OAuth 凭据是在 Google 控制台中创建的,自从我上次使用它以来就没有更改过。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。