使用 React native 从后台激活应用程序时如何显示 PIN 码屏幕?

Posted

技术标签:

【中文标题】使用 React native 从后台激活应用程序时如何显示 PIN 码屏幕?【英文标题】:How to show PIN code screen when the app is activated from the background with React native? 【发布时间】:2022-01-06 03:56:43 【问题描述】:

我正在使用 React native 开发应用程序,我的问题是当应用程序从后台重新激活时显示 PINCode 屏幕。 我使用@haskkor/react-native-pincode 中的PINCode 组件作为PIN 码输入屏幕。当用户登录到应用程序时它运行良好,但我不确定如何设置配置或其他一些语句以在用户从后台响应应用程序时显示此屏幕。 任何答案或 cmets 都会对我有很大帮助! 提前致谢。

【问题讨论】:

【参考方案1】:

您可以实现appstate更新监听器并根据状态更新导航到任何特定屏幕,详细信息可以在以下链接中找到Appstate

【讨论】:

【参考方案2】:

你可能需要AppState

只需要在父组件中管理一些东西来显示pincode组件。

AppState 会为您提供应用程序的当前状态,并且可以存储应用程序的 prevState。所以你的情况可能是这样的

appState = AppState.currentState
AppState.addEventListener("change", websocketManager._handleAppStateChange)

_handleAppStateChange = nextAppState => 
    if (appState?.match(/inactive|background/) && nextAppState === "active") 
        // Coming from background, so display pincode component.
     
    appState = nextAppState

【讨论】:

感谢您的回答。你想告诉我应该把这段代码放在哪个屏幕上吗?应用.js ? 是的,我建议使用 App.js,因为您将通过应用程序访问该组件。

以上是关于使用 React native 从后台激活应用程序时如何显示 PIN 码屏幕?的主要内容,如果未能解决你的问题,请参考以下文章

从后台打开 React Native 深层链接应用程序

React-native,在后台继续下载过程

在 react-native 的后台从服务器获取数据的可用选项

用户拒绝激活位置时无法获取 - React Native Geolocation Service

当应用程序使用 react-native-background-task 在后台运行时如何调用函数?

React Native Swipeable 最小激活距离