我正在制作一个带有通知的 todo 应用程序并使用颤振本地通知插件,如何为特定的 todo 生成一个唯一整数作为 id,以便我还可以使用该唯一整数取消该特定 todo 的通知。
问问题
106 次
4 回答
1
您可以使用UniqueKey().hashCode()
来获取唯一int.
的例如:
final notificationId = UniqueKey().hashCode()
// or you can use DateTime.now().millisecondsSinceEpoch
...
于 2021-12-30T11:04:58.693 回答
1
我提到了一些如何获得唯一 ID 的方法:-
使用这样的时间戳
DateTime.now().millisecondsSinceEpoch;
在 2020 年,您可以执行 UniqueKey();
笔记
仅与自身相等的密钥。
这不能用 const 构造函数创建,因为这意味着所有实例化的键都是同一个实例,因此不是唯一的。
https://api.flutter.dev/flutter/widgets/UniqueKey-class.html
可以使用 xid 包,它是无锁的,并且具有保证每秒和每个主机/进程 24 位唯一 ID 的 Unicity
import 'package:xid/xid.dart';
void main() {
var xid = Xid();
print('generated id: $xid');
}
于 2021-12-30T11:15:21.440 回答
-1
你可以在这里使用 UUID 包
import 'package:uuid/uuid.dart';
var uuid = Uuid();
print(uuid.v1());
print(uuid.v4());
或者也参考这个
于 2021-12-30T11:10:14.430 回答
-2
你可以使用这个包: 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'
于 2021-12-30T11:09:16.617 回答