|
|
@@ -1,139 +0,0 @@
|
|
|
-import GradientText from "@/components/basic/GradientText";
|
|
|
-import { View, PickerView, PickerViewColumn, Text } from "@tarojs/components";
|
|
|
-import Taro from "@tarojs/taro";
|
|
|
-import { useEffect, useLayoutEffect, useRef, useState } from "react";
|
|
|
-import { LayoutChangeEvent } from "react-native";
|
|
|
-import AppleHealthKit, {
|
|
|
- HealthValue,
|
|
|
- HealthKitPermissions,
|
|
|
-} from 'react-native-health'
|
|
|
-
|
|
|
-/* Permission options */
|
|
|
-const permissions = {
|
|
|
- permissions: {
|
|
|
- read: [
|
|
|
- AppleHealthKit.Constants.Permissions.StepCount,
|
|
|
- // AppleHealthKit.Constants.Permissions.Steps,
|
|
|
- // AppleHealthKit.Constants.Permissions.HeartRate,
|
|
|
- // AppleHealthKit.Constants.Permissions.BloodGlucose,
|
|
|
- // AppleHealthKit.Constants.Permissions.BloodPressureDiastolic,
|
|
|
- // AppleHealthKit.Constants.Permissions.BloodPressureSystolic,
|
|
|
- // AppleHealthKit.Constants.Permissions.ActiveEnergyBurned,
|
|
|
-
|
|
|
- // AppleHealthKit.Constants.Permissions.AppleStandTime,
|
|
|
- // AppleHealthKit.Constants.Permissions.BloodType,
|
|
|
- // AppleHealthKit.Constants.Permissions.BiologicalSex,
|
|
|
- // AppleHealthKit.Constants.Permissions.BloodGlucose,
|
|
|
- // AppleHealthKit.Constants.Permissions.FatTotal,
|
|
|
- // AppleHealthKit.Constants.Permissions.Iron,
|
|
|
- // AppleHealthKit.Constants.Permissions.StepCount,
|
|
|
- // AppleHealthKit.Constants.Permissions.VitaminA,
|
|
|
- // AppleHealthKit.Constants.Permissions.VitaminC,
|
|
|
- // AppleHealthKit.Constants.Permissions.VitaminD,
|
|
|
-
|
|
|
- // AppleHealthKit.Constants.Permissions.AllergyRecord,
|
|
|
- // AppleHealthKit.Constants.Permissions.VitalSignRecord,
|
|
|
- ],
|
|
|
- write: [AppleHealthKit.Constants.Permissions.StepCount],
|
|
|
- },
|
|
|
-} as HealthKitPermissions
|
|
|
-
|
|
|
-export default function DemoA() {
|
|
|
- const [steps, setSteps] = useState('')
|
|
|
- useEffect(() => {
|
|
|
-
|
|
|
- }, [])
|
|
|
-
|
|
|
- function healthKit() {
|
|
|
- AppleHealthKit.initHealthKit(permissions, (error: string) => {
|
|
|
- /* Called after we receive a response from the system */
|
|
|
-
|
|
|
- if (error) {
|
|
|
- console.log('[ERROR] Cannot grant permissions!')
|
|
|
- }
|
|
|
- console.log(permissions)
|
|
|
-
|
|
|
- /* Can now read or write to HealthKit */
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- // AppleHealthKit.getHeartRateSamples(
|
|
|
- // options,
|
|
|
- // (callbackError: string, results: HealthValue[]) => {
|
|
|
- // /* Samples are now collected from HealthKit */
|
|
|
- // },
|
|
|
- // )
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
- function getAuthStatus() {
|
|
|
- AppleHealthKit.getAuthStatus(permissions, (err, results) => {
|
|
|
- console.log(err, results)
|
|
|
- Taro.showModal({
|
|
|
- title: '返回原始数据',
|
|
|
- content: JSON.stringify(results)
|
|
|
- })
|
|
|
- })
|
|
|
- // const authorized = await AppleHealthKit.i
|
|
|
- }
|
|
|
-
|
|
|
- function getSteps() {
|
|
|
- const options = {
|
|
|
- date: new Date(new Date().getTime()-24*3600*1000).toISOString()
|
|
|
- }
|
|
|
- // AppleHealthKit.getDailyStepCountSamples
|
|
|
- AppleHealthKit.getStepCount(options, (error: string, results: HealthValue) => {
|
|
|
- if (!error) {
|
|
|
- setSteps(results.value + '')
|
|
|
- Taro.showModal({
|
|
|
- title: '返回原始数据',
|
|
|
- content: JSON.stringify(results)
|
|
|
- })
|
|
|
- }
|
|
|
- console.log(error, results)
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
- function checkAuth() {
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- const years = [0, 1, 2, 3, 4, 5]
|
|
|
- const months = [0, 1, 2, 3, 4, 5]
|
|
|
- const days = [0, 1, 2, 3, 4, 5]
|
|
|
-
|
|
|
- return (
|
|
|
- <View style={{ backgroundColor: 'white', height: 800, width: 375 }} >
|
|
|
- <Text style={{ color: 'red', fontSize: 50 }}>hello world</Text>
|
|
|
- <PickerView title="hhhh" itemStyle={{ color: '#000', fonSize: 10 }} indicatorStyle='height: 50px;' style='width: 100%; height: 300px;color:white' value={[0, 1, 2, 3, 4]} onChange={(e) => { }}>
|
|
|
- <PickerViewColumn style={{ color: '#fff' }}>
|
|
|
- {years.map(item => {
|
|
|
- return (
|
|
|
- <View style={{ color: 'white', opacity: 0, backgroundColor: 'pink' }}>{item}年</View>
|
|
|
- );
|
|
|
- })}
|
|
|
- </PickerViewColumn>
|
|
|
- <PickerViewColumn>
|
|
|
- {months.map(item => {
|
|
|
- return (
|
|
|
- <View>{item}月12日</View>
|
|
|
- )
|
|
|
- })}
|
|
|
- </PickerViewColumn>
|
|
|
- <PickerViewColumn>
|
|
|
- {days.map(item => {
|
|
|
- return (
|
|
|
- <View>{item}日</View>
|
|
|
- )
|
|
|
- })}
|
|
|
- </PickerViewColumn>
|
|
|
- </PickerView>
|
|
|
- <GradientText style={{ fontSize: 20 }}>Hello world</GradientText>
|
|
|
- <Text style={{ color: 'red' }} onClick={healthKit}>Health Kit 授权</Text>
|
|
|
- <Text style={{ color: 'red', margin: 10 }} onClick={getAuthStatus}>Health Kit 获取授权状态</Text>
|
|
|
- <Text style={{ color: 'red' }} onClick={getSteps}>获取当前步数:<Text>{steps}</Text> </Text>
|
|
|
-
|
|
|
- </View>
|
|
|
- );
|
|
|
-}
|