Skip to content

Warning: TypeError: _reactNativeHealth.default.initHealthKit is not a function (it is undefined) #399

Open
@dws-krisha

Description

@dws-krisha

import React, { useEffect, useState } from "react";
import { View, Text, Button, Alert } from "react-native";
import AppleHealthKit, { HealthKitPermissions } from "react-native-health";

const App = () => {
const [isHealthKitAvailable, setIsHealthKitAvailable] = useState(false);
const [hasPermissions, setHasPermission] = useState(false);
const [steps, setSteps] = useState<number | null>(null);

const permissions: HealthKitPermissions = {
permissions: {
read: [AppleHealthKit.Constants.Permissions.Steps],
write: [],
},
};

const fetchSteps = () => {
const options = {
startDate: new Date(2024, 0, 1).toISOString(), // Example: fetch data from Jan 1, 2024
endDate: new Date().toISOString(),
};

AppleHealthKit.getStepCount(options, (err, results) => {
  if (err) {
    console.error("Error fetching step count:", err);
    return;
  }
  setSteps(results.value);
});

};

useEffect(() => {
// Check if HealthKit is available
AppleHealthKit?.isAvailable((err, available) => {
if (err || !available) {
Alert.alert(
"HealthKit Not Available",
"This device does not support Apple HealthKit."
);
return;
}
setIsHealthKitAvailable(true);

  // Initialize HealthKit
  AppleHealthKit?.initHealthKit(permissions, (err) => {
    if (err) {
      console.log("Error getting permissions");
      return;
    }
    setHasPermission(true);
    fetchSteps();
  });
});

}, []);

return (
<View style={{ flex: 1, justifyContent: "center", alignItems: "center" }}>

{isHealthKitAvailable
? Steps Count: ${steps ?? "Loading..."}
: "HealthKit not available"}

{isHealthKitAvailable && (

)}

);
};

export default App;

I dont know what am i missing here my library is installed properly ,pods are installed correctly but getting such error.
same error also there for isAvailable call.
Can anyone suggest or help me out to solve this issue?

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions