颤振与振动;Firebase-如何仅允许每个设备使用一个帐户
我尝试只允许用户在设备上创建一个帐户,因此当用户创建帐户并注销时,然后尝试创建一个新帐户它不会创建帐户,并说此设备已经有帐户。到目前为止,我已经获得了设备id,但我不知道现在要做什么。我要做的是使用唯一的设备id,并在firestore中在用户集合中创建一个文档,其文档id为设备id,然后,要验证该id是否已经存在,需要使用以下代码颤振与振动;Firebase-如何仅允许每个设备使用一个帐户,firebase,flutter,dart,google-cloud-firestore,firebase-authentication,Firebase,Flutter,Dart,Google Cloud Firestore,Firebase Authentication,我尝试只允许用户在设备上创建一个帐户,因此当用户创建帐户并注销时,然后尝试创建一个新帐户它不会创建帐户,并说此设备已经有帐户。到目前为止,我已经获得了设备id,但我不知道现在要做什么。我要做的是使用唯一的设备id,并在firestore中在用户集合中创建一个文档,其文档id为设备id,然后,要验证该id是否已经存在,需要使用以下代码 FirebaseFirestore.instance .collection('users') .doc(idDevice) .get()
FirebaseFirestore.instance
.collection('users')
.doc(idDevice)
.get()
.then((DocumentSnapshot documentSnapshot) {
if (documentSnapshot.exists) {
print('Document data: ${documentSnapshot.data()}');
} else {
print('Document does not exist on the database');
}
});
我要做的是使用唯一的设备id,并在firestore中在用户集合中创建一个文档,其文档id为设备id,然后使用以下代码验证该id是否已存在
FirebaseFirestore.instance
.collection('users')
.doc(idDevice)
.get()
.then((DocumentSnapshot documentSnapshot) {
if (documentSnapshot.exists) {
print('Document data: ${documentSnapshot.data()}');
} else {
print('Document does not exist on the database');
}
});
在数据库中创建一个表,其中组合的列:userid(来自新帐户)和deviceid是唯一的。 使用设备信息包获取唯一的设备id
Future<String> getDeviceId() async {
var deviceInfo = DeviceInfoPlugin();
if (Platform.isIOS) {
var iosInfo= await deviceInfo.iosInfo;
return iosInfo.identifierForVendor; // on iOS
} else {
var androidInfo = await deviceInfo.androidInfo;
return androidInfo.androidId; // on Android
}
}
方法获取设备id
Future<String> getDeviceId() async {
var deviceInfo = DeviceInfoPlugin();
if (Platform.isIOS) {
var iosInfo= await deviceInfo.iosInfo;
return iosInfo.identifierForVendor; // on iOS
} else {
var androidInfo = await deviceInfo.androidInfo;
return androidInfo.androidId; // on Android
}
}
Future getDeviceId()异步{
var deviceInfo=deviceInfo插件();
if(Platform.isIOS){
var iosInfo=wait deviceInfo.iosInfo;
返回iosInfo.identifierForVendor;//在iOS上
}否则{
var androidInfo=等待设备信息。androidInfo;
在Android上返回androidInfo.androidId;//
}
}
在数据库中创建一个表,其中组合列:userid(来自新帐户)和deviceid是唯一的。
使用设备信息包获取唯一的设备id
Future<String> getDeviceId() async {
var deviceInfo = DeviceInfoPlugin();
if (Platform.isIOS) {
var iosInfo= await deviceInfo.iosInfo;
return iosInfo.identifierForVendor; // on iOS
} else {
var androidInfo = await deviceInfo.androidInfo;
return androidInfo.androidId; // on Android
}
}
方法获取设备id
Future<String> getDeviceId() async {
var deviceInfo = DeviceInfoPlugin();
if (Platform.isIOS) {
var iosInfo= await deviceInfo.iosInfo;
return iosInfo.identifierForVendor; // on iOS
} else {
var androidInfo = await deviceInfo.androidInfo;
return androidInfo.androidId; // on Android
}
}
Future getDeviceId()异步{
var deviceInfo=deviceInfo插件();
if(Platform.isIOS){
var iosInfo=wait deviceInfo.iosInfo;
返回iosInfo.identifierForVendor;//在iOS上
}否则{
var androidInfo=等待设备信息。androidInfo;
在Android上返回androidInfo.androidId;//
}
}
解决方案是获取设备的唯一ID,并用用户详细信息修补该ID。因此,当任何人或该特定用户试图从该特定设备创建帐户时,您将使用device\u info\u plus
package在后端检查该唯一ID是否存在。我如何检查该唯一ID是否存在解决方案是获取该设备的唯一ID并用用户详细信息修补该唯一ID。因此,当任何人或该特定用户试图从该特定设备创建帐户时,您将使用device\u info\u plus
package check在后端检查该唯一ID是否存在