【问题标题】:Where does HealthKit read the default units?HealthKit 在哪里读取默认单位?
【发布时间】:2014-10-27 10:34:23
【问题描述】:

我想知道 Health.app 在哪里读取重量单位。我的始终设置为 Kg,但我找不到切换此选项的选项。 HealthKit 框架支持多种重量单位:公斤、克、盎司、磅和石头。

我想知道是否有获取当前 Health.app 重量单位的 API,以便我也可以直接在我的应用中使用该单位。

有什么想法吗?

【问题讨论】:

  • 嗨帕特里克!我想检索相同的数据。你最后做了什么?您是否手动检查语言环境?还是使用了 HealthKit API?

标签: objective-c iphone xcode ios8 healthkit


【解决方案1】:

更新:在最新的 iOS 8.2 测试版中,有一个新的 API -[HKHealthStore preferredUnitsForQuantityTypes:completion:] 允许应用程序访问用户的首选单元,以获取应用程序有权读取或写入的任何 HKQuantityType

Health 应用根据设备的区域设置对不同类型使用不同的单位。例如,在美国磅用于显示重量,但在使用公制系统的语言环境中,将改为使用千克。从 iOS 8.2 开始,用户还可以在 Health 应用中为许多数量类型指定他们喜欢的单位。

【讨论】:

  • 很遗憾,应用程序无法访问此直接 API。使用 HealthKit,似乎用户需要先授权。如果我们需要显示磅或公斤的选择器,UX 并不理想。
【解决方案2】:

您可能需要检查用户的语言环境并手动设置正确的单位。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-02
    • 2013-06-12
    • 2021-01-11
    • 1970-01-01
    相关资源
    最近更新 更多