如何生成一个唯一的id,flutter

How to generate a Unique id, flutter

我正在制作一个带有通知的待办事项应用程序,并且正在使用 flutter 本地通知插件,如何生成一个唯一整数作为特定待办事项的 ID,以便我也可以使用该唯一整数取消该特定待办事项的通知。

您可以使用 UniqueKey().hashCode() 获得独一无二的 int.
例如:

final notificationId = UniqueKey().hashCode()
// or you can use DateTime.now().millisecondsSinceEpoch
...

您可以使用这个包: http://pub.dartlang.org/packages/uuid

import 'package:uuid/uuid.dart';

// Create uuid object
var uuid = Uuid();

// Generate a v1 (time-based) id
uuid.v1(); // -> '6c84fb90-12c4-11e1-840d-7b25c5ee775a'

// Generate a v4 (random) id
uuid.v4(); // -> '120ec61a-a0f2-4ac4-8393-c866d813b8d1'

您可以使用 UUID 包 here

import 'package:uuid/uuid.dart';

 var uuid = Uuid();
 print(uuid.v1());  

 print(uuid.v4()); 

或参考this

我提到了一些如何获得唯一 ID 的方法 :-

use time stamps like this

DateTime.now().millisecondsSinceEpoch;

In year 2020 you can do UniqueKey();

备注

一个只等于它自己的键。

这不能用 const 构造函数创建,因为这意味着所有实例化的键都是同一个实例,因此不是唯一的。

https://api.flutter.dev/flutter/widgets/UniqueKey-class.html

can use xid package which is lock free and has a Unicity guaranteed for 24 bits unique ids per second and per host/process

import 'package:xid/xid.dart';

void main() {
  var xid = Xid();
  print('generated id: $xid');

}