我正在尝试使用 React Native 制作一个应用程序Expo Go.已经成功让谷歌登录工作,一切都很好。不幸的是,用户的登录在应用程序重新启动之间不会保留。起初,我认为这是一个异步存储问题,但我可以在重新启动之间将项目保存在存储中。
我需要手动保存哪些数据才能在应用程序启动时让用户重新登录?
我更喜欢手动保存数据,因为所有方法都是supposed去工作,别为我工作。我尝试过的方法:
(此代码将始终在应用程序重新启动时打印用户已注销。)
此时,我认为如果我可以自己保存用户的凭据,然后在应用程序启动时以静默方式登录它们,那就更容易了。我很难找到执行此操作的代码。
好的,所以我意识到,为了保留登录状态,如果使用 expo,您实际上必须执行一个特殊的过程。您需要初始化自己的身份验证,传入异步存储,如下所示
import { initializeApp } from "firebase/app"
import { initializeAuth } from "firebase/auth"
import { getReactNativePersistence } from "firebase/auth/react-native"
import AsyncStorage from "@react-native-async-storage/async-storage"
const defaultApp = initializeApp(config);
initializeAuth(defaultApp, {
persistence: getReactNativePersistence(AsyncStorage)
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)