generateUuid static method
Implementation
static String generateUuid() {
final random = Random();
final List<int> randomNumbers = List<int>.generate(16, (index) => random.nextInt(256));
randomNumbers[6] = (randomNumbers[6] & 0x0F) | 0x40; // bits 6-7 of the clock_seq_hi_and_reserved to 01
randomNumbers[8] = (randomNumbers[8] & 0x3F) | 0x80; // bits 6-7 of the clock_seq_hi_and_reserved to 10
String digits(int val, int length) {
return val.toRadixString(16).padLeft(length, '0');
}
String sections(List<int> values) {
return values.map((value) => digits(value, 2)).join();
}
return '${sections(randomNumbers.sublist(0, 4))}-'
'${sections(randomNumbers.sublist(4, 6))}-'
'${sections(randomNumbers.sublist(6, 8))}-'
'${sections(randomNumbers.sublist(8, 10))}-'
'${sections(randomNumbers.sublist(10, 16))}';
}