React native 计步器。手表步数没有发出信号
我正在使用react native/expo并尝试访问计步器。我的代码在iOS Expo Go应用程序上运行良好,但在Android Expo(诺基亚7.2/Android 10)上,我没有从计步器上得到信号 以下是我在进入“WalkScreen”之前要做的事情: 下面是我如何使用计步器的:React native 计步器。手表步数没有发出信号,react-native,expo,android-sensors,React Native,Expo,Android Sensors,我正在使用react native/expo并尝试访问计步器。我的代码在iOS Expo Go应用程序上运行良好,但在Android Expo(诺基亚7.2/Android 10)上,我没有从计步器上得到信号 以下是我在进入“WalkScreen”之前要做的事情: 下面是我如何使用计步器的: const subscribeToPedometer = () => { let thisWalking = false; let currentStepCountBefore =
const subscribeToPedometer = () => {
let thisWalking = false;
let currentStepCountBefore = 0;
const subscription = Pedometer.watchStepCount(result => {
if (currentStepCountBefore === result.steps && thisWalking) {
setWalking(false);
thisWalking = false;
} else if (!thisWalking) {
setWalking(true);
thisWalking = true;
}
currentStepCountBefore = result.steps;
setCurrentStepCount(result.steps);
console.log("Pedometer.watchStepCount result.steps", result.steps);
});
setPedometerSubscription(subscription);
Pedometer.isAvailableAsync().then(
result => {
console.log("isAvailableAsync", result);
setIsPedometerAvailable(result);
},
error => {
console.log('Could not get isPedometerAvailable: ' + error);
setIsPedometerAvailable(false);
}
);
};
我进入漫游屏幕时没有任何问题,因此状态被授予。在Pedometer.isAvailableAsync()方法中,我得到了true,因此它似乎是可用的。但是我在console.log
console.log(“Pedometer.watchStepCount result.steps”,result.steps)中没有得到任何数据代码>可能是因为这个原因吗?
const subscribeToPedometer = () => {
let thisWalking = false;
let currentStepCountBefore = 0;
const subscription = Pedometer.watchStepCount(result => {
if (currentStepCountBefore === result.steps && thisWalking) {
setWalking(false);
thisWalking = false;
} else if (!thisWalking) {
setWalking(true);
thisWalking = true;
}
currentStepCountBefore = result.steps;
setCurrentStepCount(result.steps);
console.log("Pedometer.watchStepCount result.steps", result.steps);
});
setPedometerSubscription(subscription);
Pedometer.isAvailableAsync().then(
result => {
console.log("isAvailableAsync", result);
setIsPedometerAvailable(result);
},
error => {
console.log('Could not get isPedometerAvailable: ' + error);
setIsPedometerAvailable(false);
}
);
};