我正在为Android Wear开发表盘。我想在脸上展示仅由穿戴设备记录的步骤。根据Google文档,使用HistoryApi.readDailyTotal()

根据文档:


  系统不需要授权即可通过HistoryApi.readDailyTotal()方法访问TYPE_STEP_COUNT_DELTA数据类型。如果您需要在无法显示权限面板的区域中使用步骤数据(例如,Android Wear表盘表面和活动或小部件活动),这将很有用。有关如何在表盘中使用此数据的更多信息,请参阅在表盘中显示信息。


不幸的是,这对我不起作用-GoogleApiClient始终返回连接失败:5-这意味着:客户端尝试使用指定的无效帐户名连接到服务。

这是我的客户:

mFitnessApiClient = new GoogleApiClient.Builder(MyWatchFace.this)
            .addApi(Fitness.HISTORY_API)
            .addScope(Fitness.SCOPE_ACTIVITY_READ)
            .addConnectionCallbacks(this)
            .addOnConnectionFailedListener(this)
            .build();


任何想法如何解决这个问题?我正为此感到困难。

最佳答案

我在获得可穿戴设备(仅限本地)上的总量时遇到了类似的问题,这对我有用:不要添加任何范围,请确保调用useDefaultAccount。希望这可以帮助!
例如:

mFitnessApiClient = new GoogleApiClient.Builder(MyWatchFace.this)
            .addApi(Fitness.HISTORY_API)
            // Do not add any scopes if using the client on the watch
            .addConnectionCallbacks(this)
            .useDefaultAccount() // Use the default account
            .addOnConnectionFailedListener(this)
            .build();

关于android - HistoryApi.readDailyTotal()在Wear设备上不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33035757/

10-12 01:35