颤动检查应用程序是卸载还是第一次

Flutter check if app was uninstall or first time

我有一个 flutter 应用程序,我使用 flutter 安全存储。 我正在应用程序中实施 FCM(Firebase Cloud Messaging)推送通知。

我有一个主屏幕,在用户登录后,我会检查用户是第一次使用该应用程序还是卸载了该应用程序。

我通过安全存储中的密钥进行此检查,如果密钥的值为空,则我假设用户是第一次使用该应用程序。因此,如果这是我第一次在数据库中插入从 firebase 收到的令牌。

问题:这种方法是否适用于卸载应用程序或清除存储空间的情况?通常情况下,如果用户卸载应用程序并在一段时间后再次安装应用程序,存储应该被清除并且该密钥应该为空,对吧?

谢谢!

此方法有效,但不是最佳解决方案,因为如果应用未安装,您将丢失密钥,最好的方法是将唯一设备 ID 保存在您自己的后端,并在应用启动时检查此值。 (你可以使用这个flutter包https://pub.dev/packages/flutter_udid)。

如果你不想使用包,你检查是否创建了一个用户,如果用户已经在你的后端创建不是第一次。