小编Ash*_*nto的帖子

如何远程强制注销firebase auth用户

我有一个项目,它使用firebase auth和firebaseUI来验证用户.我启用了Google,Facebook和电子邮件提供商.我需要的是远程注销或禁用某些用户.

我希望用户在这样做时从应用程序注销.我尝试在firebase控制台中禁用该用户,并使用firebase管理SDK(https://firebase.google.com/docs/auth/admin/manage-sessions)撤消刷新令牌.

我等了2天以上,仍然注意到用户已登录并可以访问firestore数据.

我也经历了尝试 Firebase在删除后仍然检索authData

谁能指出我做错了什么?

firebase firebase-authentication firebase-admin

11
推荐指数
2
解决办法
2830
查看次数

如何在Chrome Android中禁用应用程序安装迷你信息栏

我添加了https://developers.google.com/web/fundamentals/app-install-banners/native指定的本机应用安装横幅。

我的要求是,应在所有浏览器上显示一个带有安装按钮的对话框,并在单击安装时在chrome上显示本机应用程序安装横幅,在其他浏览器上应使用firebase动态链接。

我模仿了如图所示的应用程序安装对话框,其中包含应用程序徽标,标题,描述和安装按钮。

应用安装横幅

在除chrome之外的所有浏览器上,都会立即显示此对话框,并且安装按钮链接到firebase动态链接,如果已安装,它将打开应用程序,否则将打开playstore来安装应用程序。

在chrome中,beforeinstallprompt事件触发时将显示该事件,并单击“安装”后,我将调用,deferredPrompt.prompt()以显示本机应用程序安装对话框。

所有这些工作正常,但是chrome第一次在横幅上方显示了迷你信息栏,如下所示。一旦我们关闭了迷你信息栏,它将在下次继续正常运行。(因为chrome在文档中提到的未来3个月内不会显示迷你信息栏)

该图显示了Chrome中的迷你信息栏

预期结果:

没有信息迷你吧的预期结果

我的Next.js代码显示安装横幅如下。

getInitialState() {
    const { userAgent } = this.props;
    const bDetails = new BrowserDetails(userAgent);

    return {
        deferredPrompt: null,
        showBanner: bDetails.isMobile() && bDetails.isAndroid() && !bDetails.isChrome(),
        isChrome: bDetails.isChrome(),
    };
}

componentDidMount() {
    const { isChrome } = this.state;
    if (isChrome) {
        this.listenForInstallBanner();
    }
}

onClickInstallApp() {
    const { deferredPrompt } = this.state;
    deferredPrompt.prompt();
    deferredPrompt.userChoice.then((choice) => {
        if (choice.outcome === 'accepted') {
            this.closeDialog();
        }
    });
}

listenForInstallBanner = () => …
Run Code Online (Sandbox Code Playgroud)

browser firefox google-chrome chromium google-chrome-app

5
推荐指数
0
解决办法
426
查看次数