当前位置: 首页 > news >正文

建设网站挂广告赚钱弄一个电影网站怎么做

建设网站挂广告赚钱,弄一个电影网站怎么做,wordpress瀑布流图片主题,做风能的网站文章目录 一、简介二、权限配置1. 在开发者账号中勾选HealthKit2. 在targets的capabilities中添加HealthKit。3. infoPlist需要配置权限 三、创建健康数据管理类1. 引入头文件2. 健康数据读写权限3. 检查权限4. 读取步数数据5. 写入健康数据 四、运行获取权限页面 一、简介 He… 文章目录 一、简介二、权限配置1. 在开发者账号中勾选HealthKit2. 在targets的capabilities中添加HealthKit。3. infoPlist需要配置权限 三、创建健康数据管理类1. 引入头文件2. 健康数据读写权限3. 检查权限4. 读取步数数据5. 写入健康数据 四、运行获取权限页面 一、简介 HealthKit是一款用于搜集和办理医疗和健康相关数据的开发工具包它为开发者供给了拜访用户健康数据的API和框架并使得这些数据能够与iOS设备上的其他应用程序相互共享。 HealthKit允许应用程序搜集和办理各种类型的健康数据包含身体丈量数据如体重、身高和心率、健身数据如步数和距离、饮食数据、睡觉数据和心理健康数据等。这些数据能够从多个来历搜集如从硬件设备如智能手表、智能手机和健身跟踪器中获取或由用户手动输入。 二、权限配置 1. 在开发者账号中勾选HealthKit 2. 在targets的capabilities中添加HealthKit。 3. infoPlist需要配置权限 Privacy - Health Share Usage Description 需要您的同意才能访问健康更新给您带来更好的服务 Privacy - Health Update Usage Description 需要您的同意才能分享健康数据给您带来更好的服务 注意iOS13 这里描述太粗糙会导致程序崩溃。 三、创建健康数据管理类 1. 引入头文件 import HealthKit2. 健康数据读写权限 // 写权限private func dataTypesToWrite() - SetHKSampleType {// 步数let stepCountType HKObjectType.quantityType(forIdentifier: .stepCount)// 身高let heightType HKObjectType.quantityType(forIdentifier: .height)// 体重let weightType HKObjectType.quantityType(forIdentifier: .bodyMass)// 活动能量let activeEnergyType HKObjectType.quantityType(forIdentifier: .activeEnergyBurned)// 体温let temperatureType HKObjectType.quantityType(forIdentifier: .bodyTemperature)// 睡眠分析let sleepAnalysisType HKObjectType.categoryType(forIdentifier: .sleepAnalysis)let setTypes Set([stepCountType, heightType, weightType, activeEnergyType, temperatureType, sleepAnalysisType].compactMap { $0 })return setTypes}// 读权限private func dataTypesToRead() - SetHKObjectType {// 步数let stepCountType HKObjectType.quantityType(forIdentifier: .stepCount)// 身高let heightType HKObjectType.quantityType(forIdentifier: .height)// 体重let weightType HKObjectType.quantityType(forIdentifier: .bodyMass)// 体温let temperatureType HKObjectType.quantityType(forIdentifier: .bodyTemperature)// 出生日期let birthdayType HKObjectType.characteristicType(forIdentifier: .dateOfBirth)// 性别let sexType HKObjectType.characteristicType(forIdentifier: .biologicalSex)// 步数跑步距离let distance HKObjectType.quantityType(forIdentifier: .distanceWalkingRunning)// 活动能量let activeEnergyType HKObjectType.quantityType(forIdentifier: .activeEnergyBurned)// 睡眠分析let sleepAnalysisType HKObjectType.categoryType(forIdentifier: .sleepAnalysis)let setTypes Set([stepCountType, heightType, weightType, activeEnergyType, birthdayType, sexType, distance, temperatureType, sleepAnalysisType].compactMap { $0 })return setTypes}3. 检查权限 /// 检查是否支持获取健康数据public func authorizeHealthKit(_ compltion: ((_ success: Bool, _ error: Error?) - Void)?) {guard HKHealthStore.isHealthDataAvailable() true else {let error NSError(domain: 不支持健康数据, code: 2, userInfo: [NSLocalizedDescriptionKey: HealthKit is not available in th is Device])if let compltion compltion {compltion(false, error)}return}let writeDataTypes dataTypesToWrite()let readDataTypes dataTypesToRead()healthStore.requestAuthorization(toShare: writeDataTypes, read: readDataTypes) { success, error inif let compltion compltion {compltion(success, error)}}}4. 读取步数数据 /// 获取步数public func getStepCount(_ completion: escaping ((_ stepValue: String?, _ error: Error?) - Void)) {// 要检索的数据类型。guard let stepType HKObjectType.quantityType(forIdentifier: .stepCount) else {let error NSError(domain: 不支持健康数据, code: 2, userInfo: [NSLocalizedDescriptionKey: HealthKit is not available in th is Device])completion(nil, error)return}// NSSortDescriptors用来告诉healthStore怎么样将结果排序。let start NSSortDescriptor.init(key: HKSampleSortIdentifierStartDate, ascending: false)let end NSSortDescriptor.init(key: HKSampleSortIdentifierEndDate, ascending: false)/*param sampleType 要检索的数据类型。param predicate 数据应该匹配的基准。param limit 返回的最大数据条数param sortDescriptors 数据的排序描述param resultsHandler 结束后返回结果*/let query HKSampleQuery.init(sampleType: stepType, predicate: HealthKitManager.getStepPredicateForSample(), limit: HKObjectQueryNoLimit, sortDescriptors: [start, end]) { _, results, error inguard let results results else {completion(nil, error)return}print(resultCount \(results.count) result \(results))// 把结果装换成字符串类型var totleSteps 0results.forEach({ quantitySample inguard let quantitySample quantitySample as? HKQuantitySample else {return}let quantity quantitySample.quantitylet heightUnit HKUnit.count()let usersHeight quantity.doubleValue(for: heightUnit)totleSteps Int(usersHeight)})print(最新步数\(totleSteps))completion(\(totleSteps), error)}healthStore.execute(query)}5. 写入健康数据 /// 写入数据public func writeStep() {let steps HKObjectType.quantityType(forIdentifier: .stepCount)!let quantity HKQuantity(unit: HKUnit.count(), doubleValue: 1000)let now Date()let start now.addingTimeInterval(-3600 * 24)let end nowlet sample HKQuantitySample(type: steps, quantity: quantity, start: start, end: end)let healthStore HKHealthStore()healthStore.save(sample) { (success, _) inif success {// 数据已写入 HealthKit} else {// 写入数据失败}}}四、运行获取权限页面
http://www.w-s-a.com/news/157429/

相关文章:

  • 青海省制作网站专业专业定制网吧桌椅
  • 网站开发的项目17岁高清免费观看完整版
  • 手机网站建设多少钱一个门网站源码
  • 重庆 网站开发天津住房和城乡建设厅官方网站
  • 泰安高级网站建设推广厦门高端网站建设定制
  • jsp网站开发引用文献手机seo排名
  • 创建一家网站如何创设计网页的快捷网站
  • 1688代加工官方网站h5开发教程
  • 静态网站源码下载网站怎么显示备案号
  • 网站代码设计网站开发维护任职要求
  • 长寿做网站的电话怎么快速刷排名
  • 上海市中学生典型事例网站邯郸全网推广
  • 厦门网站建设680元好男人的最好的影院
  • 石家庄网站建设设计产品设计专业就业前景
  • 网站移动排名做最好最全的命理网站
  • 网站怎么防黑客杭州市做外贸网站的公司
  • 网站推广公司认准乐云seo易语言做网站登录
  • 配色设计网站推荐网站下拉菜单重叠
  • 内容展示型网站特点在北京注册公司需要多少钱
  • h5网站源代码创意设计理念
  • 岳阳网站开发服务推广运营平台
  • 网站开发得多长时间湖南建设人力资源网证书查询
  • 论坛网站开发网络营销是什么时候产生的
  • 帮人做网站赚钱无忧软文网
  • 做网站要不要营业执照重庆网站优化seo公司
  • 学院宣传网站建设简介做网站没灵感
  • 网站建设终稿确认书网站意义学校
  • 3小时网站建设平台专业制作教学课件
  • 曲阜网站建设百度开户现货黄金什么网站可以做直播
  • 比较好的企业建站平台小程序开发外包该注意些什么