如何在本机反应(即触摸事件)中检查全局不活动状态。我尝试使用 https://www.npmjs.com/package/react-native-user-inactivity 但它没有注册触摸事件。我更喜欢纯 JavaScript 解决方案,而不是链接本机代码。仅适用于 iOS 的解决方案就可以了。
您可以使用react-native包中的PanResponder。
在这里您可以看到一个使用expo工具包的工作示例。
我为此目的创建了模块
react-native-inactivity
。通过使用此模块,您实际上可以了解应用程序是否在 X 毫秒内处于非活动状态。你可以这样使用。
import ReactNativeInactivity from "react-native-inactivity";
export default function App() {
return (
<View style={{ flex: 1 }}>
<ReactNativeInactivity
isActive={true}
onInactive={() => {//Do Logout or something like that}}
timeForInactivity={60000} //1 mint in ms
restartTimerOnActivityAfterExpiration={false}
loop={false}
style={{ flex: 1, justifyContent: "center", alignItems: "center", backgroundColor: "grey" }}>
<YOUR_NAV_HERE/>
</ReactNativeInactivity>
</View>
);
}
您还可以根据需要管理其他道具。
如果这个解决方案对您有帮助,请竖起大拇指并在存储库给我一个星星。 有关更多信息,请参阅:https://www.npmjs.com/package/react-native-inactivity