diff --git a/flutter-examples/streaming_asr/lib/utils.dart b/flutter-examples/streaming_asr/lib/utils.dart index 5f311a26..e93618c7 100644 --- a/flutter-examples/streaming_asr/lib/utils.dart +++ b/flutter-examples/streaming_asr/lib/utils.dart @@ -14,8 +14,9 @@ Future copyAssetFile(String src, [String? dst]) async { final target = join(directory.path, dst); bool exists = await new File(target).exists(); - if (!exists) { - final data = await rootBundle.load(src); + final data = await rootBundle.load(src); + + if (!exists || File(target).lengthSync() != data.lengthInBytes) { final List bytes = data.buffer.asUint8List(data.offsetInBytes, data.lengthInBytes); await File(target).writeAsBytes(bytes); diff --git a/flutter-examples/tts/lib/utils.dart b/flutter-examples/tts/lib/utils.dart index eba5c97c..206eb12c 100644 --- a/flutter-examples/tts/lib/utils.dart +++ b/flutter-examples/tts/lib/utils.dart @@ -45,8 +45,8 @@ Future copyAssetFile(String src, [String? dst]) async { final target = p.join(directory.path, dst); bool exists = await new File(target).exists(); - if (!exists) { - final data = await rootBundle.load(src); + final data = await rootBundle.load(src); + if (!exists || File(target).lengthSync() != data.lengthInBytes) { final List bytes = data.buffer.asUint8List(data.offsetInBytes, data.lengthInBytes); await (await File(target).create(recursive: true)).writeAsBytes(bytes);