From 7fd7c032fa87a38cae5404b6438fe66d37c324f1 Mon Sep 17 00:00:00 2001 From: Jolie <412895109@qq.com> Date: Fri, 28 Nov 2025 15:03:20 +0800 Subject: [PATCH 1/3] =?UTF-8?q?refactor(rtc):=20=E9=87=8D=E6=9E=84RTC?= =?UTF-8?q?=E9=A2=91=E9=81=93=E8=AF=A6=E6=83=85=E8=8E=B7=E5=8F=96=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将_fetchRtcChannelDetail方法改为私有,并新增公共方法fetchRtcChannelDetail - 在RTCManager中用户加入和离开频道时主动调用频道详情获取 - 移除RoomController中冗余的用户加入/离开消息处理逻辑 - 优化RTCManager中的网络服务依赖导入 - 调整_leaveChat消息发送逻辑以适配新的角色判断方式 --- lib/controller/discover/room_controller.dart | 89 ++------------------ lib/rtc/rtc_manager.dart | 57 ++++++++++--- 2 files changed, 52 insertions(+), 94 deletions(-) diff --git a/lib/controller/discover/room_controller.dart b/lib/controller/discover/room_controller.dart index 004f691..88e26f9 100644 --- a/lib/controller/discover/room_controller.dart +++ b/lib/controller/discover/room_controller.dart @@ -264,7 +264,8 @@ class RoomController extends GetxController with WidgetsBindingObserver { } } - Future _fetchRtcChannelDetail(String channelName) async { + /// 获取 RTC 频道详情(公有方法,供外部调用) + Future fetchRtcChannelDetail(String channelName) async { try { final response = await _networkService.rtcApi.getRtcChannelDetail( channelName, @@ -278,6 +279,10 @@ class RoomController extends GetxController with WidgetsBindingObserver { } } + Future _fetchRtcChannelDetail(String channelName) async { + await fetchRtcChannelDetail(channelName); + } + /// 发送公屏消息 Future sendChatMessage(String content) async { final channelName = RTCManager.instance.currentChannelId; @@ -453,88 +458,6 @@ class RoomController extends GetxController with WidgetsBindingObserver { } catch (e) { print('❌ 处理礼物消息失败: $e'); } - } else if (message['type'] == 'join_chat') { - final response = await _networkService.rtcApi - .getDatingRtcChannelUserDetail( - rtcChannel.value!.channelId, - message['uid'], - ); - if (!response.data.isSuccess) { - return; - } - final currentDetail = rtcChannelDetail.value; - if (currentDetail == null) { - return; - } - final userData = response.data.data; - if (userData == null) { - return; - } - - if (message['role'] == 'male_audience') { - final maleInfo = RtcSeatUserInfo( - miId: userData.miId, - userId: userData.userId, - nickName: userData.nickName, - profilePhoto: userData.profilePhoto, - genderCode: userData.genderCode, - seatNumber: userData.seatNumber, - isFriend: userData.isFriend, - isMicrophoneOn: userData.isMicrophoneOn, - isVideoOn: userData.isVideoOn, - uid: message['uid'] is int - ? message['uid'] as int - : int.tryParse(message['uid']?.toString() ?? ''), - ); - final newDetail = RtcChannelDetail( - channelId: currentDetail.channelId, - anchorInfo: currentDetail.anchorInfo, - maleInfo: maleInfo, - femaleInfo: currentDetail.femaleInfo, - ); - rtcChannelDetail.value = newDetail; - } else if (message['role'] == 'female_audience') { - final femaleInfo = RtcSeatUserInfo( - miId: userData.miId, - userId: userData.userId, - nickName: userData.nickName, - profilePhoto: userData.profilePhoto, - genderCode: userData.genderCode, - seatNumber: userData.seatNumber, - isFriend: userData.isFriend, - isMicrophoneOn: userData.isMicrophoneOn, - isVideoOn: userData.isVideoOn, - uid: message['uid'] is int - ? message['uid'] as int - : int.tryParse(message['uid']?.toString() ?? ''), - ); - final newDetail = RtcChannelDetail( - channelId: currentDetail.channelId, - anchorInfo: currentDetail.anchorInfo, - maleInfo: currentDetail.maleInfo, - femaleInfo: femaleInfo, - ); - rtcChannelDetail.value = newDetail; - } - // } - } else if (message['type'] == 'leave_chat') { - if (message['role'] == 'male_audience') { - final newDetail = RtcChannelDetail( - channelId: rtcChannelDetail.value!.channelId, - anchorInfo: rtcChannelDetail.value!.anchorInfo, - maleInfo: null, - femaleInfo: rtcChannelDetail.value!.femaleInfo, - ); - rtcChannelDetail.value = newDetail; - } else if (message['role'] == 'female_audience') { - final newDetail = RtcChannelDetail( - channelId: rtcChannelDetail.value!.channelId, - anchorInfo: rtcChannelDetail.value!.anchorInfo, - maleInfo: rtcChannelDetail.value!.maleInfo, - femaleInfo: null, - ); - rtcChannelDetail.value = newDetail; - } } } diff --git a/lib/rtc/rtc_manager.dart b/lib/rtc/rtc_manager.dart index e7eca2e..fc954bc 100644 --- a/lib/rtc/rtc_manager.dart +++ b/lib/rtc/rtc_manager.dart @@ -6,7 +6,6 @@ import 'package:flutter/foundation.dart'; import 'package:get/get.dart'; import '../controller/discover/room_controller.dart'; -import '../network/network_service.dart'; import '../pages/discover/live_room_page.dart'; /// RTC 管理器,负责管理声网音视频通话功能 @@ -119,6 +118,16 @@ class RTCManager { channelJoinedNotifier.value = true; _currentChannelId = connection.channelId; print('加入频道成功,频道名:${connection.channelId},耗时:${elapsed}ms'); + + // 调用 RoomController 的 fetchRtcChannelDetail 方法 + final channelId = connection.channelId; + if (Get.isRegistered() && + channelId != null && + channelId.isNotEmpty) { + final roomController = Get.find(); + await roomController.fetchRtcChannelDetail(channelId); + } + if (connection.localUid == _currentUid) { await RTMManager.instance.subscribe(_currentChannelId ?? ''); await RTMManager.instance.publishChannelMessage( @@ -131,21 +140,42 @@ class RTCManager { onJoinChannelSuccess!(connection, elapsed); } }, - onUserJoined: (RtcConnection connection, int remoteUid, int elapsed) async{ - print('用户加入,UID:$remoteUid'); - _handleRemoteUserJoined(remoteUid); - if (onUserJoined != null) { - onUserJoined!(connection, remoteUid, elapsed); - } - }, + onUserJoined: + (RtcConnection connection, int remoteUid, int elapsed) async { + print('用户加入,UID:$remoteUid'); + _handleRemoteUserJoined(remoteUid); + + // 调用 RoomController 的 fetchRtcChannelDetail 方法 + final channelId = connection.channelId; + if (Get.isRegistered() && + channelId != null && + channelId.isNotEmpty) { + final roomController = Get.find(); + await roomController.fetchRtcChannelDetail(channelId); + } + + if (onUserJoined != null) { + onUserJoined!(connection, remoteUid, elapsed); + } + }, onUserOffline: ( RtcConnection connection, int remoteUid, UserOfflineReasonType reason, - ) { + ) async { print('用户离开,UID:$remoteUid,原因:$reason'); _handleRemoteUserOffline(remoteUid); + + // 调用 RoomController 的 fetchRtcChannelDetail 方法 + final channelId = connection.channelId; + if (Get.isRegistered() && + channelId != null && + channelId.isNotEmpty) { + final roomController = Get.find(); + await roomController.fetchRtcChannelDetail(channelId); + } + if (onUserOffline != null) { onUserOffline!(connection, remoteUid, reason); } @@ -521,8 +551,13 @@ class RTCManager { await _engine?.muteLocalVideoStream(true); await RTMManager.instance.publishChannelMessage( channelName: _currentChannelId ?? '', - message: json.encode({'type': 'leave_chat', 'uid': _currentUid, 'role': role == CurrentRole.maleAudience - ? 'male_audience' : 'female_audience',}), + message: json.encode({ + 'type': 'leave_chat', + 'uid': _currentUid, + 'role': role == CurrentRole.maleAudience + ? 'male_audience' + : 'female_audience', + }), ); } } From 44532be91f5bfb0794b5fd576ff7aae844b59d5b Mon Sep 17 00:00:00 2001 From: Jolie <412895109@qq.com> Date: Fri, 28 Nov 2025 15:06:03 +0800 Subject: [PATCH 2/3] =?UTF-8?q?fix(discover):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E7=A7=AF=E5=88=86=E4=B8=8D=E8=B6=B3=E6=A3=80=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在进入房间前检查用户积分是否足够 - 积分不足时显示提示信息并阻止进入 - 避免无积分用户误操作进入房间 --- lib/controller/discover/room_controller.dart | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/controller/discover/room_controller.dart b/lib/controller/discover/room_controller.dart index 88e26f9..8e7bb99 100644 --- a/lib/controller/discover/room_controller.dart +++ b/lib/controller/discover/room_controller.dart @@ -201,6 +201,10 @@ class RoomController extends GetxController with WidgetsBindingObserver { SmartDialog.showToast(response.data.message); return; } + if (!response.data.data['success']) { + SmartDialog.showToast('积分不足'); + return; + } currentRole = role; if (role == CurrentRole.maleAudience || role == CurrentRole.femaleAudience) { From 918573de950b10a1f05810cc03c8b03b750ad0df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=AD=90=E8=B4=A4?= Date: Fri, 28 Nov 2025 15:12:00 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E7=BA=A2=E5=A8=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../.kotlin/errors/errors-1764292633093.log | 555 ++++++++++++++++++ .../.kotlin/errors/errors-1764292820951.log | 198 +++++++ assets/images/limit_time.png | Bin 0 -> 2085 bytes assets/images/matchmaker_icon1.png | Bin 0 -> 2895 bytes assets/images/matchmaker_icon2.png | Bin 0 -> 3139 bytes assets/images/matchmaker_icon3.png | Bin 0 -> 4416 bytes assets/images/matchmaker_icon4.png | Bin 0 -> 4024 bytes lib/components/page_appbar.dart | 2 +- .../mine/matchmaker_update_controller.dart | 26 + lib/controller/mine/rose_controller.dart | 105 +++- lib/generated/assets.dart | 5 + lib/model/mine/payment_detail_data.dart | 48 ++ lib/network/api_urls.dart | 2 + lib/network/home_api.g.dart | 2 +- lib/network/rtc_api.g.dart | 24 +- lib/network/user_api.dart | 8 + lib/network/user_api.g.dart | 100 +++- lib/pages/mine/matchmaker_update_page.dart | 391 ++++++++---- pubspec.lock | 440 +++++++------- 19 files changed, 1534 insertions(+), 372 deletions(-) create mode 100644 android/.kotlin/errors/errors-1764292633093.log create mode 100644 android/.kotlin/errors/errors-1764292820951.log create mode 100644 assets/images/limit_time.png create mode 100644 assets/images/matchmaker_icon1.png create mode 100644 assets/images/matchmaker_icon2.png create mode 100644 assets/images/matchmaker_icon3.png create mode 100644 assets/images/matchmaker_icon4.png create mode 100644 lib/model/mine/payment_detail_data.dart diff --git a/android/.kotlin/errors/errors-1764292633093.log b/android/.kotlin/errors/errors-1764292633093.log new file mode 100644 index 0000000..f9e9494 --- /dev/null +++ b/android/.kotlin/errors/errors-1764292633093.log @@ -0,0 +1,555 @@ +kotlin version: 2.1.0 +error message: Incremental compilation failed: Failed to close caches +org.jetbrains.kotlin.incremental.CachesManagerCloseException: Failed to close caches + at org.jetbrains.kotlin.incremental.BaseCompilationTransaction.closeCachesManager(CompilationTransaction.kt:126) + at org.jetbrains.kotlin.incremental.RecoverableCompilationTransaction.close(CompilationTransaction.kt:251) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.tryCompileIncrementally(IncrementalCompilerRunner.kt:747) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:120) + at org.jetbrains.kotlin.daemon.CompileServiceImplBase.execIncrementalCompiler(CompileServiceImpl.kt:674) + at org.jetbrains.kotlin.daemon.CompileServiceImplBase.access$execIncrementalCompiler(CompileServiceImpl.kt:91) + at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:1659) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source) + at java.base/java.lang.reflect.Method.invoke(Unknown Source) + at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(Unknown Source) + at java.rmi/sun.rmi.transport.Transport$1.run(Unknown Source) + at java.rmi/sun.rmi.transport.Transport$1.run(Unknown Source) + at java.base/java.security.AccessController.doPrivileged(Unknown Source) + at java.rmi/sun.rmi.transport.Transport.serviceCall(Unknown Source) + at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source) + at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source) + at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(Unknown Source) + at java.base/java.security.AccessController.doPrivileged(Unknown Source) + at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) + at java.base/java.lang.Thread.run(Unknown Source) +Caused by: java.lang.AssertionError: java.lang.Exception: Could not close incremental caches in D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\jvm\kotlin: class-fq-name-to-source.tab, source-to-classes.tab, internal-name-to-source.tab + at org.jetbrains.kotlin.com.google.common.io.Closer.close(Closer.java:236) + at org.jetbrains.kotlin.incremental.IncrementalCachesManager.close(IncrementalCachesManager.kt:55) + at org.jetbrains.kotlin.incremental.BaseCompilationTransaction.closeCachesManager(CompilationTransaction.kt:123) + ... 21 more +Caused by: java.lang.Exception: Could not close incremental caches in D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\jvm\kotlin: class-fq-name-to-source.tab, source-to-classes.tab, internal-name-to-source.tab + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:95) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.close(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.com.google.common.io.Closer.close(Closer.java:223) + ... 23 more + Suppressed: java.lang.IllegalArgumentException: this and base files have different roots: C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\record_android-1.4.5\android\src\main\kotlin\com\llfbandit\record\record\container\WaveContainer.kt and D:\www\dating_touchme_app\android. + at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117) + at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128) + at org.jetbrains.kotlin.incremental.storage.RelocatableFileToPathConverter.toPath(RelocatableFileToPathConverter.kt:24) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.save(FileToPathConverter.kt:33) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.save(FileToPathConverter.kt:30) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.doPut(PersistentMapImpl.java:443) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.put(PersistentMapImpl.java:422) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.put(PersistentHashMap.java:105) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 25 more + Suppressed: java.lang.IllegalArgumentException: this and base files have different roots: C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\record_android-1.4.5\android\src\main\kotlin\com\llfbandit\record\record\container\WaveContainer.kt and D:\www\dating_touchme_app\android. + at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117) + at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128) + at org.jetbrains.kotlin.incremental.storage.RelocatableFileToPathConverter.toPath(RelocatableFileToPathConverter.kt:24) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.getHashCode(FileToPathConverter.kt:50) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.getHashCode(FileToPathConverter.kt:30) + at org.jetbrains.kotlin.com.intellij.util.containers.LinkedCustomHashMap.hashKey(LinkedCustomHashMap.java:109) + at org.jetbrains.kotlin.com.intellij.util.containers.LinkedCustomHashMap.remove(LinkedCustomHashMap.java:153) + at org.jetbrains.kotlin.com.intellij.util.containers.SLRUMap.remove(SLRUMap.java:89) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.flushAppendCache(PersistentMapImpl.java:999) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.doPut(PersistentMapImpl.java:451) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.put(PersistentMapImpl.java:422) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.put(PersistentHashMap.java:105) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.AppendableInMemoryStorage.applyChanges(InMemoryStorage.kt:179) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.AppendableSetBasicMap.close(BasicMap.kt:157) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 25 more + Suppressed: java.lang.IllegalArgumentException: this and base files have different roots: C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\record_android-1.4.5\android\src\main\kotlin\com\llfbandit\record\record\container\WaveContainer.kt and D:\www\dating_touchme_app\android. + at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117) + at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128) + at org.jetbrains.kotlin.incremental.storage.RelocatableFileToPathConverter.toPath(RelocatableFileToPathConverter.kt:24) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.save(FileToPathConverter.kt:33) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.save(FileToPathConverter.kt:30) + at org.jetbrains.kotlin.incremental.storage.AppendableCollectionExternalizer.save(LazyStorage.kt:151) + at org.jetbrains.kotlin.incremental.storage.AppendableCollectionExternalizer.save(LazyStorage.kt:142) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.doPut(PersistentMapImpl.java:443) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.put(PersistentMapImpl.java:422) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.put(PersistentHashMap.java:105) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.AppendableInMemoryStorage.applyChanges(InMemoryStorage.kt:179) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 25 more + Suppressed: java.lang.Exception: Could not close incremental caches in D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\lookups: id-to-file.tab, file-to-id.tab + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:95) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.close(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.LookupStorage.close(LookupStorage.kt:155) + ... 24 more + Suppressed: java.lang.IllegalArgumentException: this and base files have different roots: C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\record_android-1.4.5\android\src\main\kotlin\com\llfbandit\record\record\container\WaveContainer.kt and D:\www\dating_touchme_app\android. + at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117) + at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128) + at org.jetbrains.kotlin.incremental.storage.RelocatableFileToPathConverter.toPath(RelocatableFileToPathConverter.kt:24) + at org.jetbrains.kotlin.incremental.storage.LegacyFileExternalizer.save(IdToFileMap.kt:51) + at org.jetbrains.kotlin.incremental.storage.LegacyFileExternalizer.save(IdToFileMap.kt:48) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.doPut(PersistentMapImpl.java:443) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.put(PersistentMapImpl.java:422) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.put(PersistentHashMap.java:105) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 26 more + Suppressed: java.lang.IllegalArgumentException: this and base files have different roots: C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\record_android-1.4.5\android\src\main\kotlin\com\llfbandit\record\record\container\WaveContainer.kt and D:\www\dating_touchme_app\android. + at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117) + at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128) + at org.jetbrains.kotlin.incremental.storage.RelocatableFileToPathConverter.toPath(RelocatableFileToPathConverter.kt:24) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.getHashCode(FileToPathConverter.kt:50) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.getHashCode(FileToPathConverter.kt:30) + at org.jetbrains.kotlin.com.intellij.util.containers.LinkedCustomHashMap.hashKey(LinkedCustomHashMap.java:109) + at org.jetbrains.kotlin.com.intellij.util.containers.LinkedCustomHashMap.remove(LinkedCustomHashMap.java:153) + at org.jetbrains.kotlin.com.intellij.util.containers.SLRUMap.remove(SLRUMap.java:89) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.flushAppendCache(PersistentMapImpl.java:999) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.doPut(PersistentMapImpl.java:451) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.put(PersistentMapImpl.java:422) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.put(PersistentHashMap.java:105) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 26 more + Suppressed: java.lang.Exception: Could not close incremental caches in D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\inputs: source-to-output.tab + ... 26 more + Suppressed: java.lang.IllegalArgumentException: this and base files have different roots: C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\record_android-1.4.5\android\src\main\kotlin\com\llfbandit\record\record\container\WaveContainer.kt and D:\www\dating_touchme_app\android. + at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117) + at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128) + at org.jetbrains.kotlin.incremental.storage.RelocatableFileToPathConverter.toPath(RelocatableFileToPathConverter.kt:24) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.getHashCode(FileToPathConverter.kt:50) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.getHashCode(FileToPathConverter.kt:30) + at org.jetbrains.kotlin.com.intellij.util.containers.LinkedCustomHashMap.hashKey(LinkedCustomHashMap.java:109) + at org.jetbrains.kotlin.com.intellij.util.containers.LinkedCustomHashMap.remove(LinkedCustomHashMap.java:153) + at org.jetbrains.kotlin.com.intellij.util.containers.SLRUMap.remove(SLRUMap.java:89) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.flushAppendCache(PersistentMapImpl.java:999) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.doPut(PersistentMapImpl.java:451) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.put(PersistentMapImpl.java:422) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.put(PersistentHashMap.java:105) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.AppendableInMemoryStorage.applyChanges(InMemoryStorage.kt:179) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.AppendableSetBasicMap.close(BasicMap.kt:157) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 25 more + + +error message: Daemon compilation failed: null +java.lang.Exception + at org.jetbrains.kotlin.daemon.common.CompileService$CallResult$Error.get(CompileService.kt:69) + at org.jetbrains.kotlin.daemon.common.CompileService$CallResult$Error.get(CompileService.kt:65) + at org.jetbrains.kotlin.compilerRunner.GradleKotlinCompilerWork.compileWithDaemon(GradleKotlinCompilerWork.kt:240) + at org.jetbrains.kotlin.compilerRunner.GradleKotlinCompilerWork.compileWithDaemonOrFallbackImpl(GradleKotlinCompilerWork.kt:159) + at org.jetbrains.kotlin.compilerRunner.GradleKotlinCompilerWork.run(GradleKotlinCompilerWork.kt:111) + at org.jetbrains.kotlin.compilerRunner.GradleCompilerRunnerWithWorkers$GradleKotlinCompilerWorkAction.execute(GradleCompilerRunnerWithWorkers.kt:76) + at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63) + at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:66) + at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:62) + at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:100) + at org.gradle.workers.internal.NoIsolationWorkerFactory$1.lambda$execute$0(NoIsolationWorkerFactory.java:62) + at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:44) + at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:41) + at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209) + at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204) + at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66) + at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59) + at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166) + at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59) + at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53) + at org.gradle.workers.internal.AbstractWorker.executeWrappedInBuildOperation(AbstractWorker.java:41) + at org.gradle.workers.internal.NoIsolationWorkerFactory$1.execute(NoIsolationWorkerFactory.java:59) + at org.gradle.workers.internal.DefaultWorkerExecutor.lambda$submitWork$0(DefaultWorkerExecutor.java:174) + at java.base/java.util.concurrent.FutureTask.run(Unknown Source) + at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runExecution(DefaultConditionalExecutionQueue.java:194) + at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.access$700(DefaultConditionalExecutionQueue.java:127) + at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner$1.run(DefaultConditionalExecutionQueue.java:169) + at org.gradle.internal.Factories$1.create(Factories.java:31) + at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:263) + at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:127) + at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:132) + at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runBatch(DefaultConditionalExecutionQueue.java:164) + at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.run(DefaultConditionalExecutionQueue.java:133) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) + at java.base/java.util.concurrent.FutureTask.run(Unknown Source) + at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) + at org.gradle.internal.concurrent.AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:48) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) + at java.base/java.lang.Thread.run(Unknown Source) +Caused by: java.lang.AssertionError: java.lang.Exception: Could not close incremental caches in D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\jvm\kotlin: class-fq-name-to-source.tab, source-to-classes.tab, internal-name-to-source.tab + at org.jetbrains.kotlin.com.google.common.io.Closer.close(Closer.java:236) + at org.jetbrains.kotlin.incremental.IncrementalCachesManager.close(IncrementalCachesManager.kt:55) + at kotlin.io.CloseableKt.closeFinally(Closeable.kt:56) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileNonIncrementally(IncrementalCompilerRunner.kt:293) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:148) + at org.jetbrains.kotlin.daemon.CompileServiceImplBase.execIncrementalCompiler(CompileServiceImpl.kt:674) + at org.jetbrains.kotlin.daemon.CompileServiceImplBase.access$execIncrementalCompiler(CompileServiceImpl.kt:91) + at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:1659) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source) + at java.base/java.lang.reflect.Method.invoke(Unknown Source) + at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(Unknown Source) + at java.rmi/sun.rmi.transport.Transport$1.run(Unknown Source) + at java.rmi/sun.rmi.transport.Transport$1.run(Unknown Source) + at java.base/java.security.AccessController.doPrivileged(Unknown Source) + at java.rmi/sun.rmi.transport.Transport.serviceCall(Unknown Source) + at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source) + at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source) + at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(Unknown Source) + at java.base/java.security.AccessController.doPrivileged(Unknown Source) + at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source) + ... 3 more +Caused by: java.lang.Exception: Could not close incremental caches in D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\jvm\kotlin: class-fq-name-to-source.tab, source-to-classes.tab, internal-name-to-source.tab + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:95) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.close(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.com.google.common.io.Closer.close(Closer.java:223) + ... 22 more + Suppressed: java.lang.IllegalStateException: Storage for [D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\jvm\kotlin\class-fq-name-to-source.tab] is already registered + at org.jetbrains.kotlin.com.intellij.util.io.FilePageCache.registerPagedFileStorage(FilePageCache.java:410) + at org.jetbrains.kotlin.com.intellij.util.io.PagedFileStorage.(PagedFileStorage.java:72) + at org.jetbrains.kotlin.com.intellij.util.io.ResizeableMappedFile.(ResizeableMappedFile.java:55) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentBTreeEnumerator.(PersistentBTreeEnumerator.java:128) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentEnumerator.createDefaultEnumerator(PersistentEnumerator.java:52) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:165) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:140) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.buildImplementation(PersistentMapBuilder.java:88) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.build(PersistentMapBuilder.java:71) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:45) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:71) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.createMap(LazyStorage.kt:62) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.getStorageOrCreateNew(LazyStorage.kt:59) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 24 more + Suppressed: java.lang.Exception: Storage[D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\jvm\kotlin\class-fq-name-to-source.tab] registration stack trace + at org.jetbrains.kotlin.com.intellij.util.io.FilePageCache.registerPagedFileStorage(FilePageCache.java:437) + at org.jetbrains.kotlin.com.intellij.util.io.PagedFileStorage.(PagedFileStorage.java:72) + at org.jetbrains.kotlin.com.intellij.util.io.ResizeableMappedFile.(ResizeableMappedFile.java:55) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentBTreeEnumerator.(PersistentBTreeEnumerator.java:128) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentEnumerator.createDefaultEnumerator(PersistentEnumerator.java:52) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:165) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:140) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.buildImplementation(PersistentMapBuilder.java:88) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.build(PersistentMapBuilder.java:71) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:45) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:71) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.createMap(LazyStorage.kt:62) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.getStorageOrCreateNew(LazyStorage.kt:59) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.close(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.com.google.common.io.Closer.close(Closer.java:223) + at org.jetbrains.kotlin.incremental.IncrementalCachesManager.close(IncrementalCachesManager.kt:55) + at org.jetbrains.kotlin.incremental.BaseCompilationTransaction.closeCachesManager(CompilationTransaction.kt:123) + at org.jetbrains.kotlin.incremental.RecoverableCompilationTransaction.close(CompilationTransaction.kt:251) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.tryCompileIncrementally(IncrementalCompilerRunner.kt:747) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:120) + ... 18 more + Suppressed: java.lang.IllegalStateException: Storage for [D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\jvm\kotlin\source-to-classes.tab] is already registered + at org.jetbrains.kotlin.com.intellij.util.io.FilePageCache.registerPagedFileStorage(FilePageCache.java:410) + at org.jetbrains.kotlin.com.intellij.util.io.PagedFileStorage.(PagedFileStorage.java:72) + at org.jetbrains.kotlin.com.intellij.util.io.ResizeableMappedFile.(ResizeableMappedFile.java:55) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentBTreeEnumerator.(PersistentBTreeEnumerator.java:128) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentEnumerator.createDefaultEnumerator(PersistentEnumerator.java:52) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:165) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:140) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.buildImplementation(PersistentMapBuilder.java:88) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.build(PersistentMapBuilder.java:71) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:45) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:71) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.createMap(LazyStorage.kt:62) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.getStorageOrCreateNew(LazyStorage.kt:59) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.AppendableInMemoryStorage.applyChanges(InMemoryStorage.kt:179) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.AppendableSetBasicMap.close(BasicMap.kt:157) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 24 more + Suppressed: java.lang.Exception: Storage[D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\jvm\kotlin\source-to-classes.tab] registration stack trace + at org.jetbrains.kotlin.com.intellij.util.io.FilePageCache.registerPagedFileStorage(FilePageCache.java:437) + at org.jetbrains.kotlin.com.intellij.util.io.PagedFileStorage.(PagedFileStorage.java:72) + at org.jetbrains.kotlin.com.intellij.util.io.ResizeableMappedFile.(ResizeableMappedFile.java:55) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentBTreeEnumerator.(PersistentBTreeEnumerator.java:128) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentEnumerator.createDefaultEnumerator(PersistentEnumerator.java:52) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:165) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:140) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.buildImplementation(PersistentMapBuilder.java:88) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.build(PersistentMapBuilder.java:71) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:45) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:71) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.createMap(LazyStorage.kt:62) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.getStorageOrCreateNew(LazyStorage.kt:59) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.AppendableInMemoryStorage.applyChanges(InMemoryStorage.kt:179) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.AppendableSetBasicMap.close(BasicMap.kt:157) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.close(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.com.google.common.io.Closer.close(Closer.java:223) + at org.jetbrains.kotlin.incremental.IncrementalCachesManager.close(IncrementalCachesManager.kt:55) + at org.jetbrains.kotlin.incremental.BaseCompilationTransaction.closeCachesManager(CompilationTransaction.kt:123) + at org.jetbrains.kotlin.incremental.RecoverableCompilationTransaction.close(CompilationTransaction.kt:251) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.tryCompileIncrementally(IncrementalCompilerRunner.kt:747) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:120) + ... 18 more + Suppressed: java.lang.IllegalStateException: Storage for [D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\jvm\kotlin\internal-name-to-source.tab] is already registered + at org.jetbrains.kotlin.com.intellij.util.io.FilePageCache.registerPagedFileStorage(FilePageCache.java:410) + at org.jetbrains.kotlin.com.intellij.util.io.PagedFileStorage.(PagedFileStorage.java:72) + at org.jetbrains.kotlin.com.intellij.util.io.ResizeableMappedFile.(ResizeableMappedFile.java:55) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentBTreeEnumerator.(PersistentBTreeEnumerator.java:128) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentEnumerator.createDefaultEnumerator(PersistentEnumerator.java:52) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:165) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:140) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.buildImplementation(PersistentMapBuilder.java:88) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.build(PersistentMapBuilder.java:71) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:45) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:71) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.createMap(LazyStorage.kt:62) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.getStorageOrCreateNew(LazyStorage.kt:59) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.AppendableInMemoryStorage.applyChanges(InMemoryStorage.kt:179) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 24 more + Suppressed: java.lang.Exception: Storage[D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\jvm\kotlin\internal-name-to-source.tab] registration stack trace + at org.jetbrains.kotlin.com.intellij.util.io.FilePageCache.registerPagedFileStorage(FilePageCache.java:437) + at org.jetbrains.kotlin.com.intellij.util.io.PagedFileStorage.(PagedFileStorage.java:72) + at org.jetbrains.kotlin.com.intellij.util.io.ResizeableMappedFile.(ResizeableMappedFile.java:55) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentBTreeEnumerator.(PersistentBTreeEnumerator.java:128) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentEnumerator.createDefaultEnumerator(PersistentEnumerator.java:52) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:165) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:140) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.buildImplementation(PersistentMapBuilder.java:88) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.build(PersistentMapBuilder.java:71) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:45) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:71) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.createMap(LazyStorage.kt:62) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.getStorageOrCreateNew(LazyStorage.kt:59) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.AppendableInMemoryStorage.applyChanges(InMemoryStorage.kt:179) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.close(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.com.google.common.io.Closer.close(Closer.java:223) + at org.jetbrains.kotlin.incremental.IncrementalCachesManager.close(IncrementalCachesManager.kt:55) + at org.jetbrains.kotlin.incremental.BaseCompilationTransaction.closeCachesManager(CompilationTransaction.kt:123) + at org.jetbrains.kotlin.incremental.RecoverableCompilationTransaction.close(CompilationTransaction.kt:251) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.tryCompileIncrementally(IncrementalCompilerRunner.kt:747) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:120) + ... 18 more + Suppressed: java.lang.Exception: Could not close incremental caches in D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\lookups: id-to-file.tab, file-to-id.tab + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:95) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.close(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.LookupStorage.close(LookupStorage.kt:155) + ... 23 more + Suppressed: java.lang.IllegalStateException: Storage for [D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\lookups\id-to-file.tab] is already registered + at org.jetbrains.kotlin.com.intellij.util.io.FilePageCache.registerPagedFileStorage(FilePageCache.java:410) + at org.jetbrains.kotlin.com.intellij.util.io.PagedFileStorage.(PagedFileStorage.java:72) + at org.jetbrains.kotlin.com.intellij.util.io.ResizeableMappedFile.(ResizeableMappedFile.java:55) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentBTreeEnumerator.(PersistentBTreeEnumerator.java:128) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentEnumerator.createDefaultEnumerator(PersistentEnumerator.java:52) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:165) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:140) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.buildImplementation(PersistentMapBuilder.java:88) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.build(PersistentMapBuilder.java:71) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:45) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:71) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.createMap(LazyStorage.kt:62) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.getStorageOrCreateNew(LazyStorage.kt:59) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 25 more + Suppressed: java.lang.Exception: Storage[D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\lookups\id-to-file.tab] registration stack trace + at org.jetbrains.kotlin.com.intellij.util.io.FilePageCache.registerPagedFileStorage(FilePageCache.java:437) + at org.jetbrains.kotlin.com.intellij.util.io.PagedFileStorage.(PagedFileStorage.java:72) + at org.jetbrains.kotlin.com.intellij.util.io.ResizeableMappedFile.(ResizeableMappedFile.java:55) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentBTreeEnumerator.(PersistentBTreeEnumerator.java:128) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentEnumerator.createDefaultEnumerator(PersistentEnumerator.java:52) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:165) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:140) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.buildImplementation(PersistentMapBuilder.java:88) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.build(PersistentMapBuilder.java:71) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:45) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:71) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.createMap(LazyStorage.kt:62) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.getStorageOrCreateNew(LazyStorage.kt:59) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.close(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.LookupStorage.close(LookupStorage.kt:155) + at org.jetbrains.kotlin.com.google.common.io.Closer.close(Closer.java:223) + at org.jetbrains.kotlin.incremental.IncrementalCachesManager.close(IncrementalCachesManager.kt:55) + at org.jetbrains.kotlin.incremental.BaseCompilationTransaction.closeCachesManager(CompilationTransaction.kt:123) + at org.jetbrains.kotlin.incremental.RecoverableCompilationTransaction.close(CompilationTransaction.kt:251) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.tryCompileIncrementally(IncrementalCompilerRunner.kt:747) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:120) + ... 18 more + Suppressed: java.lang.IllegalStateException: Storage for [D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\lookups\file-to-id.tab] is already registered + at org.jetbrains.kotlin.com.intellij.util.io.FilePageCache.registerPagedFileStorage(FilePageCache.java:410) + at org.jetbrains.kotlin.com.intellij.util.io.PagedFileStorage.(PagedFileStorage.java:72) + at org.jetbrains.kotlin.com.intellij.util.io.ResizeableMappedFile.(ResizeableMappedFile.java:55) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentBTreeEnumerator.(PersistentBTreeEnumerator.java:128) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentEnumerator.createDefaultEnumerator(PersistentEnumerator.java:52) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:165) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:140) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.buildImplementation(PersistentMapBuilder.java:88) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.build(PersistentMapBuilder.java:71) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:45) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:71) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.createMap(LazyStorage.kt:62) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.getStorageOrCreateNew(LazyStorage.kt:59) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 25 more + Suppressed: java.lang.Exception: Storage[D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\lookups\file-to-id.tab] registration stack trace + at org.jetbrains.kotlin.com.intellij.util.io.FilePageCache.registerPagedFileStorage(FilePageCache.java:437) + at org.jetbrains.kotlin.com.intellij.util.io.PagedFileStorage.(PagedFileStorage.java:72) + at org.jetbrains.kotlin.com.intellij.util.io.ResizeableMappedFile.(ResizeableMappedFile.java:55) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentBTreeEnumerator.(PersistentBTreeEnumerator.java:128) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentEnumerator.createDefaultEnumerator(PersistentEnumerator.java:52) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:165) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:140) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.buildImplementation(PersistentMapBuilder.java:88) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.build(PersistentMapBuilder.java:71) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:45) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:71) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.createMap(LazyStorage.kt:62) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.getStorageOrCreateNew(LazyStorage.kt:59) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.close(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.LookupStorage.close(LookupStorage.kt:155) + at org.jetbrains.kotlin.com.google.common.io.Closer.close(Closer.java:223) + at org.jetbrains.kotlin.incremental.IncrementalCachesManager.close(IncrementalCachesManager.kt:55) + at org.jetbrains.kotlin.incremental.BaseCompilationTransaction.closeCachesManager(CompilationTransaction.kt:123) + at org.jetbrains.kotlin.incremental.RecoverableCompilationTransaction.close(CompilationTransaction.kt:251) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.tryCompileIncrementally(IncrementalCompilerRunner.kt:747) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:120) + ... 18 more + Suppressed: java.lang.Exception: Could not close incremental caches in D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\inputs: source-to-output.tab + ... 25 more + Suppressed: java.lang.IllegalStateException: Storage for [D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\inputs\source-to-output.tab] is already registered + at org.jetbrains.kotlin.com.intellij.util.io.FilePageCache.registerPagedFileStorage(FilePageCache.java:410) + at org.jetbrains.kotlin.com.intellij.util.io.PagedFileStorage.(PagedFileStorage.java:72) + at org.jetbrains.kotlin.com.intellij.util.io.ResizeableMappedFile.(ResizeableMappedFile.java:55) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentBTreeEnumerator.(PersistentBTreeEnumerator.java:128) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentEnumerator.createDefaultEnumerator(PersistentEnumerator.java:52) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:165) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:140) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.buildImplementation(PersistentMapBuilder.java:88) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.build(PersistentMapBuilder.java:71) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:45) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:71) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.createMap(LazyStorage.kt:62) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.getStorageOrCreateNew(LazyStorage.kt:59) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.AppendableInMemoryStorage.applyChanges(InMemoryStorage.kt:179) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.AppendableSetBasicMap.close(BasicMap.kt:157) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 24 more + Suppressed: java.lang.Exception: Storage[D:\www\dating_touchme_app\build\record_android\kotlin\compileDebugKotlin\cacheable\caches-jvm\inputs\source-to-output.tab] registration stack trace + at org.jetbrains.kotlin.com.intellij.util.io.FilePageCache.registerPagedFileStorage(FilePageCache.java:437) + at org.jetbrains.kotlin.com.intellij.util.io.PagedFileStorage.(PagedFileStorage.java:72) + at org.jetbrains.kotlin.com.intellij.util.io.ResizeableMappedFile.(ResizeableMappedFile.java:55) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentBTreeEnumerator.(PersistentBTreeEnumerator.java:128) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentEnumerator.createDefaultEnumerator(PersistentEnumerator.java:52) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:165) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.(PersistentMapImpl.java:140) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.buildImplementation(PersistentMapBuilder.java:88) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapBuilder.build(PersistentMapBuilder.java:71) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:45) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.(PersistentHashMap.java:71) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.createMap(LazyStorage.kt:62) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.getStorageOrCreateNew(LazyStorage.kt:59) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.AppendableInMemoryStorage.applyChanges(InMemoryStorage.kt:179) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.AppendableSetBasicMap.close(BasicMap.kt:157) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.close(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.com.google.common.io.Closer.close(Closer.java:223) + at org.jetbrains.kotlin.incremental.IncrementalCachesManager.close(IncrementalCachesManager.kt:55) + at org.jetbrains.kotlin.incremental.BaseCompilationTransaction.closeCachesManager(CompilationTransaction.kt:123) + at org.jetbrains.kotlin.incremental.RecoverableCompilationTransaction.close(CompilationTransaction.kt:251) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.tryCompileIncrementally(IncrementalCompilerRunner.kt:747) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:120) + ... 18 more + + diff --git a/android/.kotlin/errors/errors-1764292820951.log b/android/.kotlin/errors/errors-1764292820951.log new file mode 100644 index 0000000..a10abba --- /dev/null +++ b/android/.kotlin/errors/errors-1764292820951.log @@ -0,0 +1,198 @@ +kotlin version: 2.1.0 +error message: Daemon compilation failed: null +java.lang.Exception + at org.jetbrains.kotlin.daemon.common.CompileService$CallResult$Error.get(CompileService.kt:69) + at org.jetbrains.kotlin.daemon.common.CompileService$CallResult$Error.get(CompileService.kt:65) + at org.jetbrains.kotlin.compilerRunner.GradleKotlinCompilerWork.compileWithDaemon(GradleKotlinCompilerWork.kt:240) + at org.jetbrains.kotlin.compilerRunner.GradleKotlinCompilerWork.compileWithDaemonOrFallbackImpl(GradleKotlinCompilerWork.kt:159) + at org.jetbrains.kotlin.compilerRunner.GradleKotlinCompilerWork.run(GradleKotlinCompilerWork.kt:111) + at org.jetbrains.kotlin.compilerRunner.GradleCompilerRunnerWithWorkers$GradleKotlinCompilerWorkAction.execute(GradleCompilerRunnerWithWorkers.kt:76) + at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63) + at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:66) + at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:62) + at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:100) + at org.gradle.workers.internal.NoIsolationWorkerFactory$1.lambda$execute$0(NoIsolationWorkerFactory.java:62) + at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:44) + at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:41) + at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:209) + at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204) + at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66) + at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59) + at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:166) + at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59) + at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53) + at org.gradle.workers.internal.AbstractWorker.executeWrappedInBuildOperation(AbstractWorker.java:41) + at org.gradle.workers.internal.NoIsolationWorkerFactory$1.execute(NoIsolationWorkerFactory.java:59) + at org.gradle.workers.internal.DefaultWorkerExecutor.lambda$submitWork$0(DefaultWorkerExecutor.java:174) + at java.base/java.util.concurrent.FutureTask.run(Unknown Source) + at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runExecution(DefaultConditionalExecutionQueue.java:194) + at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.access$700(DefaultConditionalExecutionQueue.java:127) + at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner$1.run(DefaultConditionalExecutionQueue.java:169) + at org.gradle.internal.Factories$1.create(Factories.java:31) + at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:263) + at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:127) + at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:132) + at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runBatch(DefaultConditionalExecutionQueue.java:164) + at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.run(DefaultConditionalExecutionQueue.java:133) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) + at java.base/java.util.concurrent.FutureTask.run(Unknown Source) + at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) + at org.gradle.internal.concurrent.AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:48) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) + at java.base/java.lang.Thread.run(Unknown Source) +Caused by: java.lang.AssertionError: java.lang.Exception: Could not close incremental caches in D:\www\dating_touchme_app\build\photo_manager\kotlin\compileDebugKotlin\cacheable\caches-jvm\jvm\kotlin: class-fq-name-to-source.tab, source-to-classes.tab, internal-name-to-source.tab + at org.jetbrains.kotlin.com.google.common.io.Closer.close(Closer.java:236) + at org.jetbrains.kotlin.incremental.IncrementalCachesManager.close(IncrementalCachesManager.kt:55) + at kotlin.io.CloseableKt.closeFinally(Closeable.kt:56) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileNonIncrementally(IncrementalCompilerRunner.kt:293) + at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:129) + at org.jetbrains.kotlin.daemon.CompileServiceImplBase.execIncrementalCompiler(CompileServiceImpl.kt:674) + at org.jetbrains.kotlin.daemon.CompileServiceImplBase.access$execIncrementalCompiler(CompileServiceImpl.kt:91) + at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:1659) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source) + at java.base/java.lang.reflect.Method.invoke(Unknown Source) + at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(Unknown Source) + at java.rmi/sun.rmi.transport.Transport$1.run(Unknown Source) + at java.rmi/sun.rmi.transport.Transport$1.run(Unknown Source) + at java.base/java.security.AccessController.doPrivileged(Unknown Source) + at java.rmi/sun.rmi.transport.Transport.serviceCall(Unknown Source) + at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source) + at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source) + at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(Unknown Source) + at java.base/java.security.AccessController.doPrivileged(Unknown Source) + at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source) + ... 3 more +Caused by: java.lang.Exception: Could not close incremental caches in D:\www\dating_touchme_app\build\photo_manager\kotlin\compileDebugKotlin\cacheable\caches-jvm\jvm\kotlin: class-fq-name-to-source.tab, source-to-classes.tab, internal-name-to-source.tab + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:95) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.close(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.com.google.common.io.Closer.close(Closer.java:223) + ... 22 more + Suppressed: java.lang.IllegalArgumentException: this and base files have different roots: C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\photo_manager-3.8.2\android\src\main\kotlin\com\fluttercandies\photo_manager\PhotoManagerPlugin.kt and D:\www\dating_touchme_app\android. + at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117) + at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128) + at org.jetbrains.kotlin.incremental.storage.RelocatableFileToPathConverter.toPath(RelocatableFileToPathConverter.kt:24) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.save(FileToPathConverter.kt:33) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.save(FileToPathConverter.kt:30) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.doPut(PersistentMapImpl.java:443) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.put(PersistentMapImpl.java:422) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.put(PersistentHashMap.java:105) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 24 more + Suppressed: java.lang.IllegalArgumentException: this and base files have different roots: C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\photo_manager-3.8.2\android\src\main\kotlin\com\fluttercandies\photo_manager\PhotoManagerPlugin.kt and D:\www\dating_touchme_app\android. + at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117) + at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128) + at org.jetbrains.kotlin.incremental.storage.RelocatableFileToPathConverter.toPath(RelocatableFileToPathConverter.kt:24) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.getHashCode(FileToPathConverter.kt:50) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.getHashCode(FileToPathConverter.kt:30) + at org.jetbrains.kotlin.com.intellij.util.containers.LinkedCustomHashMap.hashKey(LinkedCustomHashMap.java:109) + at org.jetbrains.kotlin.com.intellij.util.containers.LinkedCustomHashMap.remove(LinkedCustomHashMap.java:153) + at org.jetbrains.kotlin.com.intellij.util.containers.SLRUMap.remove(SLRUMap.java:89) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.flushAppendCache(PersistentMapImpl.java:999) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.doPut(PersistentMapImpl.java:451) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.put(PersistentMapImpl.java:422) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.put(PersistentHashMap.java:105) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.AppendableInMemoryStorage.applyChanges(InMemoryStorage.kt:179) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.AppendableSetBasicMap.close(BasicMap.kt:157) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 24 more + Suppressed: java.lang.IllegalArgumentException: this and base files have different roots: C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\photo_manager-3.8.2\android\src\main\kotlin\com\fluttercandies\photo_manager\PhotoManagerPlugin.kt and D:\www\dating_touchme_app\android. + at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117) + at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128) + at org.jetbrains.kotlin.incremental.storage.RelocatableFileToPathConverter.toPath(RelocatableFileToPathConverter.kt:24) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.save(FileToPathConverter.kt:33) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.save(FileToPathConverter.kt:30) + at org.jetbrains.kotlin.incremental.storage.AppendableCollectionExternalizer.save(LazyStorage.kt:151) + at org.jetbrains.kotlin.incremental.storage.AppendableCollectionExternalizer.save(LazyStorage.kt:142) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.doPut(PersistentMapImpl.java:443) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.put(PersistentMapImpl.java:422) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.put(PersistentHashMap.java:105) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.AppendableInMemoryStorage.applyChanges(InMemoryStorage.kt:179) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 24 more + Suppressed: java.lang.Exception: Could not close incremental caches in D:\www\dating_touchme_app\build\photo_manager\kotlin\compileDebugKotlin\cacheable\caches-jvm\lookups: id-to-file.tab, file-to-id.tab + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:95) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.close(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.LookupStorage.close(LookupStorage.kt:155) + ... 23 more + Suppressed: java.lang.IllegalArgumentException: this and base files have different roots: C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\photo_manager-3.8.2\android\src\main\kotlin\com\fluttercandies\photo_manager\PhotoManagerPlugin.kt and D:\www\dating_touchme_app\android. + at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117) + at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128) + at org.jetbrains.kotlin.incremental.storage.RelocatableFileToPathConverter.toPath(RelocatableFileToPathConverter.kt:24) + at org.jetbrains.kotlin.incremental.storage.LegacyFileExternalizer.save(IdToFileMap.kt:51) + at org.jetbrains.kotlin.incremental.storage.LegacyFileExternalizer.save(IdToFileMap.kt:48) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.doPut(PersistentMapImpl.java:443) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.put(PersistentMapImpl.java:422) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.put(PersistentHashMap.java:105) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 25 more + Suppressed: java.lang.IllegalArgumentException: this and base files have different roots: C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\photo_manager-3.8.2\android\src\main\kotlin\com\fluttercandies\photo_manager\PhotoManagerPlugin.kt and D:\www\dating_touchme_app\android. + at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117) + at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128) + at org.jetbrains.kotlin.incremental.storage.RelocatableFileToPathConverter.toPath(RelocatableFileToPathConverter.kt:24) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.getHashCode(FileToPathConverter.kt:50) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.getHashCode(FileToPathConverter.kt:30) + at org.jetbrains.kotlin.com.intellij.util.containers.LinkedCustomHashMap.hashKey(LinkedCustomHashMap.java:109) + at org.jetbrains.kotlin.com.intellij.util.containers.LinkedCustomHashMap.remove(LinkedCustomHashMap.java:153) + at org.jetbrains.kotlin.com.intellij.util.containers.SLRUMap.remove(SLRUMap.java:89) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.flushAppendCache(PersistentMapImpl.java:999) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.doPut(PersistentMapImpl.java:451) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.put(PersistentMapImpl.java:422) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.put(PersistentHashMap.java:105) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.PersistentStorageWrapper.close(PersistentStorage.kt:124) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 25 more + Suppressed: java.lang.Exception: Could not close incremental caches in D:\www\dating_touchme_app\build\photo_manager\kotlin\compileDebugKotlin\cacheable\caches-jvm\inputs: source-to-output.tab + ... 25 more + Suppressed: java.lang.IllegalArgumentException: this and base files have different roots: C:\Users\Administrator\AppData\Local\Pub\Cache\hosted\pub.flutter-io.cn\photo_manager-3.8.2\android\src\main\kotlin\com\fluttercandies\photo_manager\PhotoManagerPlugin.kt and D:\www\dating_touchme_app\android. + at kotlin.io.FilesKt__UtilsKt.toRelativeString(Utils.kt:117) + at kotlin.io.FilesKt__UtilsKt.relativeTo(Utils.kt:128) + at org.jetbrains.kotlin.incremental.storage.RelocatableFileToPathConverter.toPath(RelocatableFileToPathConverter.kt:24) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.getHashCode(FileToPathConverter.kt:50) + at org.jetbrains.kotlin.incremental.storage.FileDescriptor.getHashCode(FileToPathConverter.kt:30) + at org.jetbrains.kotlin.com.intellij.util.containers.LinkedCustomHashMap.hashKey(LinkedCustomHashMap.java:109) + at org.jetbrains.kotlin.com.intellij.util.containers.LinkedCustomHashMap.remove(LinkedCustomHashMap.java:153) + at org.jetbrains.kotlin.com.intellij.util.containers.SLRUMap.remove(SLRUMap.java:89) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.flushAppendCache(PersistentMapImpl.java:999) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.doPut(PersistentMapImpl.java:451) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentMapImpl.put(PersistentMapImpl.java:422) + at org.jetbrains.kotlin.com.intellij.util.io.PersistentHashMap.put(PersistentHashMap.java:105) + at org.jetbrains.kotlin.incremental.storage.LazyStorage.set(LazyStorage.kt:80) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.applyChanges(InMemoryStorage.kt:108) + at org.jetbrains.kotlin.incremental.storage.AppendableInMemoryStorage.applyChanges(InMemoryStorage.kt:179) + at org.jetbrains.kotlin.incremental.storage.InMemoryStorage.close(InMemoryStorage.kt:136) + at org.jetbrains.kotlin.incremental.storage.AppendableSetBasicMap.close(BasicMap.kt:157) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner$close$1.invoke(BasicMapsOwner.kt:53) + at org.jetbrains.kotlin.incremental.storage.BasicMapsOwner.forEachMapSafe(BasicMapsOwner.kt:87) + ... 24 more + + diff --git a/assets/images/limit_time.png b/assets/images/limit_time.png new file mode 100644 index 0000000000000000000000000000000000000000..7b4a5bad8402d7d6ff2ec53623b5c068be2538de GIT binary patch literal 2085 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 literal 0 HcmV?d00001 diff --git a/assets/images/matchmaker_icon2.png b/assets/images/matchmaker_icon2.png new file mode 100644 index 0000000000000000000000000000000000000000..d7019542174c50a9807810c83291861cbbba23ac GIT binary patch literal 3139 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 literal 0 HcmV?d00001 diff --git a/assets/images/matchmaker_icon3.png b/assets/images/matchmaker_icon3.png new file mode 100644 index 0000000000000000000000000000000000000000..0311144c8f3a8e02219bd7193f2b6275d65c7d9e GIT binary patch literal 4416 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 literal 0 HcmV?d00001 diff --git a/assets/images/matchmaker_icon4.png b/assets/images/matchmaker_icon4.png new file mode 100644 index 0000000000000000000000000000000000000000..581240d7bc6b69ceda0e0624d9139bb52cce63be GIT binary patch literal 4024 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 getRoseList(); getRoseNum(); } + @override + void onClose() { + super.onClose(); + WidgetsBinding.instance.removeObserver(this); // 记得取消 + } + + + @override + void didChangeAppLifecycleState(AppLifecycleState state) { + appState.value = state; + + switch (state) { + case AppLifecycleState.resumed: + // ✅ 回到前台 + print('App 回到前台'); + if(launchWX.value){ + SmartDialog.showLoading(msg: '上传相册中...'); + getPaymentDetail(); + } + break; + case AppLifecycleState.paused: + // ✅ 进入后台(Android 常见) + print('App 进入后台'); + // 比如:暂停播放、保存状态等 + break; + case AppLifecycleState.inactive: + // iOS/切换页面时会短暂进入 + print('App inactive'); + break; + case AppLifecycleState.detached: + print('App detached'); + break; + case AppLifecycleState.hidden: + // 新版本多了这个状态,有的话也顺便处理一下 + print('App hidden'); + break; + } + } + + getPaymentDetail() async { + try { + final response = await _userApi.getPaymentOrderDetail( + id: orderId.value + ); + if (response.data.isSuccess && response.data.data != null) { + final data = response.data.data; + if(data?.status == 3){ + SmartDialog.dismiss(); + SmartDialog.showToast('支付成功'); + launchWX.value = false; + count.value = 0; + Get.back(); + } else { + count.value += 1; + if(count.value < 3){ + await Future.delayed(Duration(seconds: 1)); + getPaymentDetail(); + } else { + SmartDialog.dismiss(); + SmartDialog.showToast('支付失败'); + launchWX.value = false; + count.value = 0; + } + } + } else { + count.value += 1; + if(count.value < 3){ + await Future.delayed(Duration(seconds: 1)); + getPaymentDetail(); + } else { + SmartDialog.dismiss(); + SmartDialog.showToast('支付失败'); + launchWX.value = false; + count.value = 0; + } + } + } catch (e){ + if(count.value < 3){ + await Future.delayed(Duration(seconds: 1)); + getPaymentDetail(); + } else { + SmartDialog.dismiss(); + print('支付失败: $e'); + SmartDialog.showToast('支付失败'); + launchWX.value = false; + count.value = 0; + } + rethrow; + } + } + getRoseList() async { try{ final response = await _userApi.listVirtualCurrencyProduct({}); @@ -81,11 +180,13 @@ class RoseController extends GetxController { if(payChecked.value){ var e = await launchUrlString("alipays://platformapi/startapp?appId=20000067&url=https://www.baidu.com"); } else { + orderId.value = data!.paymentOrderId ?? ""; fluwx.open(target: MiniProgram( username: 'gh_9ea8d46add6f', miniProgramType: WXMiniProgramType.preview, path:"pages/index/index?amount=${roseList[activePay.value].unitSellingPrice}&paymentOrderId=${data!.paymentOrderId}&url=touchme-fee" )); + launchWX.value = true; } SmartDialog.showToast('下单成功'); diff --git a/lib/generated/assets.dart b/lib/generated/assets.dart index 5ebfadd..3fd1b67 100644 --- a/lib/generated/assets.dart +++ b/lib/generated/assets.dart @@ -117,6 +117,7 @@ class Assets { static const String imagesHomeNol = 'assets/images/home_nol.png'; static const String imagesHomePre = 'assets/images/home_pre.png'; static const String imagesInformationBg = 'assets/images/information_bg.png'; + static const String imagesLimitTime = 'assets/images/limit_time.png'; static const String imagesLiveIcon = 'assets/images/live_icon.png'; static const String imagesLocationIcon = 'assets/images/location_icon.png'; static const String imagesLoginBg = 'assets/images/login_bg.png'; @@ -125,6 +126,10 @@ class Assets { static const String imagesMale = 'assets/images/male.png'; static const String imagesMaleEmpty = 'assets/images/male_empty.png'; static const String imagesManIcon = 'assets/images/man_icon.png'; + static const String imagesMatchmakerIcon1 = 'assets/images/matchmaker_icon1.png'; + static const String imagesMatchmakerIcon2 = 'assets/images/matchmaker_icon2.png'; + static const String imagesMatchmakerIcon3 = 'assets/images/matchmaker_icon3.png'; + static const String imagesMatchmakerIcon4 = 'assets/images/matchmaker_icon4.png'; static const String imagesMessageNol = 'assets/images/message_nol.png'; static const String imagesMessagePre = 'assets/images/message_pre.png'; static const String imagesMicClose = 'assets/images/mic_close.png'; diff --git a/lib/model/mine/payment_detail_data.dart b/lib/model/mine/payment_detail_data.dart new file mode 100644 index 0000000..34c0750 --- /dev/null +++ b/lib/model/mine/payment_detail_data.dart @@ -0,0 +1,48 @@ +class PaymentDetailData { + String? id; + String? orderId; + String? productTitle; + String? productDesc; + num? payableAmount; + num? unpaidAmount; + num? paidAmount; + String? paidTime; + num? status; + + PaymentDetailData( + {this.id, + this.orderId, + this.productTitle, + this.productDesc, + this.payableAmount, + this.unpaidAmount, + this.paidAmount, + this.paidTime, + this.status}); + + PaymentDetailData.fromJson(Map json) { + id = json['id']; + orderId = json['orderId']; + productTitle = json['productTitle']; + productDesc = json['productDesc']; + payableAmount = json['payableAmount']; + unpaidAmount = json['unpaidAmount']; + paidAmount = json['paidAmount']; + paidTime = json['paidTime']; + status = json['status']; + } + + Map toJson() { + final Map data = new Map(); + data['id'] = this.id; + data['orderId'] = this.orderId; + data['productTitle'] = this.productTitle; + data['productDesc'] = this.productDesc; + data['payableAmount'] = this.payableAmount; + data['unpaidAmount'] = this.unpaidAmount; + data['paidAmount'] = this.paidAmount; + data['paidTime'] = this.paidTime; + data['status'] = this.status; + return data; + } +} diff --git a/lib/network/api_urls.dart b/lib/network/api_urls.dart index 1224b05..78d8b6b 100644 --- a/lib/network/api_urls.dart +++ b/lib/network/api_urls.dart @@ -84,6 +84,8 @@ class ApiUrls { 'dating-agency-mall/user/page/wallet-account-record'; static const String getDongwoMarriageInformationDetail = 'dating-agency-service/user/get/dongwo/marriage-information-detail'; + static const String getPaymentOrderDetail = + '/dating-agency-mall/user/get/payment-order/detail'; //首页相关接口 static const String getMarriageList = diff --git a/lib/network/home_api.g.dart b/lib/network/home_api.g.dart index e25687c..84908ed 100644 --- a/lib/network/home_api.g.dart +++ b/lib/network/home_api.g.dart @@ -58,7 +58,7 @@ class _HomeApi implements HomeApi { ), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); diff --git a/lib/network/rtc_api.g.dart b/lib/network/rtc_api.g.dart index ceac9f1..5aa117a 100644 --- a/lib/network/rtc_api.g.dart +++ b/lib/network/rtc_api.g.dart @@ -45,7 +45,7 @@ class _RtcApi implements RtcApi { (json) => RtcChannelData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -76,7 +76,7 @@ class _RtcApi implements RtcApi { (json) => RtcChannelData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -107,7 +107,7 @@ class _RtcApi implements RtcApi { (json) => RtcChannelData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -143,7 +143,7 @@ class _RtcApi implements RtcApi { (json) => RtcChannelDetail.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -177,7 +177,7 @@ class _RtcApi implements RtcApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -212,7 +212,7 @@ class _RtcApi implements RtcApi { (json) => RtcSeatUserInfo.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -246,7 +246,7 @@ class _RtcApi implements RtcApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -280,7 +280,7 @@ class _RtcApi implements RtcApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -311,7 +311,7 @@ class _RtcApi implements RtcApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -351,7 +351,7 @@ class _RtcApi implements RtcApi { ), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -392,7 +392,7 @@ class _RtcApi implements RtcApi { : List.empty(), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -426,7 +426,7 @@ class _RtcApi implements RtcApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); diff --git a/lib/network/user_api.dart b/lib/network/user_api.dart index 7bde7ea..701ba04 100644 --- a/lib/network/user_api.dart +++ b/lib/network/user_api.dart @@ -5,6 +5,7 @@ import 'package:dating_touchme_app/model/mine/bank_card_ocr_data.dart'; import 'package:dating_touchme_app/model/mine/education_data.dart'; import 'package:dating_touchme_app/model/mine/login_data.dart'; import 'package:dating_touchme_app/model/mine/occupation_data.dart'; +import 'package:dating_touchme_app/model/mine/payment_detail_data.dart'; import 'package:dating_touchme_app/model/mine/rose_data.dart'; import 'package:dating_touchme_app/model/mine/rose_history_data.dart'; import 'package:dating_touchme_app/model/mine/user_base_data.dart'; @@ -192,4 +193,11 @@ abstract class UserApi { @GET(ApiUrls.auditMatchmakerResult) Future>> getAuditMatchmaker(); + @GET(ApiUrls.getPaymentOrderDetail) + Future>> getPaymentOrderDetail( + { + @Query('id') required String id, + } + ); + } diff --git a/lib/network/user_api.g.dart b/lib/network/user_api.g.dart index 758c6e7..f2cdbe1 100644 --- a/lib/network/user_api.g.dart +++ b/lib/network/user_api.g.dart @@ -46,7 +46,7 @@ class _UserApi implements UserApi { (json) => LoginData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -79,7 +79,7 @@ class _UserApi implements UserApi { (json) => UserBaseData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -111,7 +111,7 @@ class _UserApi implements UserApi { (json) => UserData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -145,7 +145,7 @@ class _UserApi implements UserApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -179,7 +179,7 @@ class _UserApi implements UserApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -213,7 +213,7 @@ class _UserApi implements UserApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -247,7 +247,7 @@ class _UserApi implements UserApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -289,7 +289,7 @@ class _UserApi implements UserApi { : List.empty(), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -320,7 +320,7 @@ class _UserApi implements UserApi { (json) => json as String, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -351,7 +351,7 @@ class _UserApi implements UserApi { (json) => OssData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -391,7 +391,7 @@ class _UserApi implements UserApi { : List.empty(), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -425,7 +425,7 @@ class _UserApi implements UserApi { (json) => UserRoseData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -468,7 +468,7 @@ class _UserApi implements UserApi { (json) => RoseHistoryData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -505,7 +505,7 @@ class _UserApi implements UserApi { (json) => SubmitOrderData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -548,7 +548,7 @@ class _UserApi implements UserApi { : List.empty(), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -591,7 +591,7 @@ class _UserApi implements UserApi { : List.empty(), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -634,7 +634,7 @@ class _UserApi implements UserApi { : List.empty(), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -677,7 +677,7 @@ class _UserApi implements UserApi { : List.empty(), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -720,7 +720,7 @@ class _UserApi implements UserApi { : List.empty(), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -754,7 +754,7 @@ class _UserApi implements UserApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -796,7 +796,7 @@ class _UserApi implements UserApi { : List.empty(), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -830,7 +830,7 @@ class _UserApi implements UserApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -867,7 +867,7 @@ class _UserApi implements UserApi { (json) => BankCardOcrData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -901,7 +901,7 @@ class _UserApi implements UserApi { (json) => WithdrawData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -935,7 +935,7 @@ class _UserApi implements UserApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -975,7 +975,7 @@ class _UserApi implements UserApi { (json) => WithdrawAuditData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -1007,7 +1007,7 @@ class _UserApi implements UserApi { (json) => UserInfoData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -1044,7 +1044,7 @@ class _UserApi implements UserApi { (json) => WalletAccountData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -1090,7 +1090,7 @@ class _UserApi implements UserApi { WalletAccountRecordData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -1122,7 +1122,7 @@ class _UserApi implements UserApi { (json) => UserInfoData.fromJson(json as Map), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -1160,7 +1160,7 @@ class _UserApi implements UserApi { ), ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); @@ -1191,7 +1191,43 @@ class _UserApi implements UserApi { (json) => json as dynamic, ); } on Object catch (e, s) { - errorLogger?.logError(e, s, _options, _result); + errorLogger?.logError(e, s, _options); + rethrow; + } + final httpResponse = HttpResponse(_value, _result); + return httpResponse; + } + + @override + Future>> getPaymentOrderDetail({ + required String id, + }) async { + final _extra = {}; + final queryParameters = {r'id': id}; + final _headers = {}; + const Map? _data = null; + final _options = + _setStreamType>>( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/dating-agency-mall/user/get/payment-order/detail', + queryParameters: queryParameters, + data: _data, + ) + .copyWith( + baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl), + ), + ); + final _result = await _dio.fetch>(_options); + late BaseResponse _value; + try { + _value = BaseResponse.fromJson( + _result.data!, + (json) => PaymentDetailData.fromJson(json as Map), + ); + } on Object catch (e, s) { + errorLogger?.logError(e, s, _options); rethrow; } final httpResponse = HttpResponse(_value, _result); diff --git a/lib/pages/mine/matchmaker_update_page.dart b/lib/pages/mine/matchmaker_update_page.dart index 9a774d1..514cb9a 100644 --- a/lib/pages/mine/matchmaker_update_page.dart +++ b/lib/pages/mine/matchmaker_update_page.dart @@ -1,5 +1,7 @@ import 'package:dating_touchme_app/components/page_appbar.dart'; import 'package:dating_touchme_app/controller/mine/matchmaker_update_controller.dart'; +import 'package:dating_touchme_app/extension/ex_widget.dart'; +import 'package:dating_touchme_app/generated/assets.dart'; import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; @@ -12,127 +14,308 @@ class MatchmakerUpdatePage extends StatelessWidget { return GetX( init: MatchmakerUpdateController(), builder: (controller){ - return Scaffold( - appBar: PageAppbar(title: "升级红娘${controller.sum}"), - body: SingleChildScrollView( - child: Container( - padding: EdgeInsets.symmetric( - vertical: 20.w, - horizontal: 15.w + return Stack( + children: [ + Positioned( + child: Container( + width: 375.w, + height: 812.h, + decoration: BoxDecoration( + gradient: LinearGradient( + begin: Alignment.topCenter, + end: Alignment.bottomCenter, + colors: [ + Color.fromRGBO(172, 89, 255, 1), // 100% + Color.fromRGBO(117, 98, 249, 1), // 64.87% + Color.fromRGBO(117, 98, 249, 1), // 43.03% + Color.fromRGBO(255, 255, 255, 1), // 0% + ], + stops: [ + 0.0, + 0.2303, + 0.4487, + 0.6, + ], + ), + ), ), - child: Column( - children: [ - Container( - padding: EdgeInsets.all(10.w), - margin: EdgeInsets.only(bottom: 20.w), - decoration: BoxDecoration( - borderRadius: BorderRadius.all(Radius.circular(8.w)), - border: Border.all(width: 1, color: const Color.fromRGBO(51, 51, 51, 1)) - ), - child: Column( - children: [ - Text( - "趣恋恋,让婚恋服务更高效", - style: TextStyle( - fontSize: 16.w - ), + ), + Scaffold( + backgroundColor: Colors.transparent, + appBar: PageAppbar(title: "升级红娘", backgroundColor: Colors.transparent, color: Colors.white,), + body: SingleChildScrollView( + child: Container( + padding: EdgeInsets.symmetric( + vertical: 20.w, + horizontal: 12.w + ), + child: Column( + children: [ + Container( + padding: EdgeInsets.symmetric( + vertical: 20.w, + horizontal: 12.w + ), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.all(Radius.circular(18.w)), ), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, + child: Column( children: [ - Container( - width: 90.w, - height: 120.w, - decoration: BoxDecoration( - borderRadius: BorderRadius.all(Radius.circular(8.w)), - border: Border.all(width: 1, color: Colors.black) - ), + Row( + children: [ + Text( + "趣恋恋,让婚恋服务更高效", + style: TextStyle( + fontSize: 16.w, + fontWeight: FontWeight.w500 + ), + ) + ], ), - Container( - width: 90.w, - height: 120.w, - decoration: BoxDecoration( - borderRadius: BorderRadius.all(Radius.circular(8.w)), - border: Border.all(width: 1, color: Colors.black) - ), + SizedBox(height: 15.w,), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + ...controller.deal.asMap().entries.map((entry){ + return SelectItem( + item: entry.value, + index: entry.key, + active: controller.select.value, + changeActive: controller.changeActive, + ); + }), + ], ), - Container( - width: 90.w, - height: 120.w, - decoration: BoxDecoration( - borderRadius: BorderRadius.all(Radius.circular(8.w)), - border: Border.all(width: 1, color: Colors.black) - ), + SizedBox(height: 30.w,), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + "新红娘入驻权益", + style: TextStyle( + fontSize: 22.w, + color: const Color.fromRGBO(48, 48, 48, 1), + fontWeight: FontWeight.w500 + ), + ), + SizedBox(width: 10.w,), + Image.asset( + Assets.imagesLimitTime, + width: 30.w, + height: 16.w, + ) + ], ), + SizedBox(height: 15.w,), + ...(controller.deal[controller.select.value]["revenue"] as List).asMap().entries.map((entry){ + return RevenueItem( + index: controller.select.value == 2 && entry.key >= 1 ? entry.key + 1 : entry.key, + title: entry.value, + ); + }) ], - ) - ], - ), - ), - Container( - width: 345.w, - margin: EdgeInsets.only(bottom: 20.w), - padding: EdgeInsets.all(10.w), - decoration: BoxDecoration( - borderRadius: BorderRadius.all(Radius.circular(8.w)), - border: Border.all(width: 1, color: const Color.fromRGBO(51, 51, 51, 1)) - ), - child: Column( - children: [ - Text( - "趣恋恋,让婚恋服务更高效", - style: TextStyle( - fontSize: 16.w - ), ), - Text( - "趣恋恋,让婚恋服务更高效", - style: TextStyle( - fontSize: 16.w + ), + Container( + width: 325.w, + height: 45.w, + decoration: BoxDecoration( + borderRadius: BorderRadius.all(Radius.circular(45.w)), + gradient: LinearGradient( + begin: Alignment.centerLeft, // 0%:左边开始 + end: Alignment.centerRight, // 100%:右边结束 + colors: [ + Color.fromRGBO(131, 89, 255, 1), // 紫色 + Color.fromRGBO(77, 127, 231, 1), // 中间淡蓝 + Color.fromRGBO(61, 138, 224, 1), // 右侧深蓝 + ], + stops: [0.0, 0.7753, 1.0], // 对应 CSS 百分比:0%、77.53%、100% ), ), - Text( - "趣恋恋,让婚恋服务更高效", - style: TextStyle( - fontSize: 16.w + child: Center( + child: Text( + "确认", + style: TextStyle( + fontSize: 18.w, + color: Colors.white, + fontWeight: FontWeight.w500 + ), ), ), - ], - ), + ) + ], ), - Container( - width: 325.w, - height: 45.w, - decoration: BoxDecoration( - borderRadius: BorderRadius.all(Radius.circular(45.w)), - gradient: LinearGradient( - begin: Alignment.centerLeft, // 0%:左边开始 - end: Alignment.centerRight, // 100%:右边结束 - colors: [ - Color.fromRGBO(131, 89, 255, 1), // 紫色 - Color.fromRGBO(77, 127, 231, 1), // 中间淡蓝 - Color.fromRGBO(61, 138, 224, 1), // 右侧深蓝 - ], - stops: [0.0, 0.7753, 1.0], // 对应 CSS 百分比:0%、77.53%、100% - ), - ), - child: Center( - child: Text( - "确认", - style: TextStyle( - fontSize: 18.w, - color: Colors.white, - fontWeight: FontWeight.w500 - ), - ), + ), + ), + ) + ], + ); + }, + ); + } +} + +class SelectItem extends StatefulWidget { + final Map item; + final int index; + final int active; + final Function(int) changeActive; + const SelectItem({super.key, required this.item, required this.index, required this.active, required this.changeActive}); + + @override + State createState() => _SelectItemState(); +} + +class _SelectItemState extends State { + @override + Widget build(BuildContext context) { + return Stack( + children: [ + Container( + width: 103.w, + height: 109.w, + padding: EdgeInsets.only( + top: 32.w, + bottom: 9.w + ), + decoration: BoxDecoration( + borderRadius: BorderRadius.all(Radius.circular(17.w)), + border: Border.all(width: 1, color: widget.active == widget.index ? const Color.fromRGBO(117, 98, 249, 1) : const Color.fromRGBO(222, 222, 222, 1)), + gradient: widget.active == widget.index ? LinearGradient( + begin: Alignment.centerLeft, // 90deg 从左到右 + end: Alignment.centerRight, + colors: [ + Color.fromRGBO(232, 199, 255, 0.2), // 0% + Color.fromRGBO(194, 195, 255, 0.2), // 100% + ], + stops: [ + 0.0, + 1.0, + ], + ) : null, + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text( + "年费", + style: TextStyle( + fontSize: 11.w, + fontWeight: FontWeight.w700 + ), + ), + RichText( + text: TextSpan( + style: TextStyle( + color: const Color.fromRGBO(248, 85, 66, 1), + fontWeight: FontWeight.w700 + ), + children: [ + TextSpan( + text: "¥", + style: TextStyle( + fontSize: 11.w + ) ), - ) - ], + TextSpan( + text: "${widget.item["price"]}", + style: TextStyle( + fontSize: 21.w + ) + ) + ] + ), + ), + Text( + "+10小时视频相亲", + style: TextStyle( + color: Color.fromRGBO(144, 144, 144, widget.index == 0 ? 1 : 0), + fontSize: 9.w + ), + ) + ], + ), + ), + Positioned( + top: 0, + left: 0, + child: Container( + width: 63.w, + height: 16.w, + decoration: BoxDecoration( + color: widget.active == widget.index ? const Color.fromRGBO(117, 98, 249, 1) : const Color.fromRGBO(191, 191, 191, 1), + borderRadius: BorderRadius.only( + topLeft: Radius.circular(16.w), + bottomRight: Radius.circular(16.w), + ) + ), + child: Center( + child: Text( + "${widget.item["title"]}", + style: TextStyle( + fontSize: 9.w, + color: Colors.white, + fontWeight: FontWeight.w500 + ), ), ), ), - ); - }, + ) + ], + ).onTap((){ + widget.changeActive(widget.index); + }); + } +} + +class RevenueItem extends StatefulWidget { + final int index; + final String title; + const RevenueItem({super.key, required this.index, required this.title}); + + @override + State createState() => _RevenueItemState(); +} + +class _RevenueItemState extends State { + + final matchmakerIcons = { + 0: Assets.imagesMatchmakerIcon1, + 1: Assets.imagesMatchmakerIcon2, + 2: Assets.imagesMatchmakerIcon3, + 3: Assets.imagesMatchmakerIcon4, + }; + + @override + Widget build(BuildContext context) { + return Container( + padding: EdgeInsets.all(17.w), + margin: EdgeInsets.only(bottom: 4.w), + decoration: BoxDecoration( + borderRadius: BorderRadius.all(Radius.circular(18.w)), + color: const Color.fromRGBO(117, 98, 249, .1) + ), + child: Row( + children: [ + Image.asset( + matchmakerIcons[widget.index]!, + width: 26.w, + height: 26.w, + ), + SizedBox(width: 14.w,), + Expanded( + child: Text( + widget.title, + style: TextStyle( + fontSize: 11.w, + fontWeight: FontWeight.w500 + ), + ), + ) + ], + ), ); } } + diff --git a/pubspec.lock b/pubspec.lock index f8dcbe5..9ed9dbf 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -6,7 +6,7 @@ packages: description: name: _fe_analyzer_shared sha256: c209688d9f5a5f26b2fb47a188131a6fb9e876ae9e47af3737c0b4f58a93470d - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "91.0.0" agora_rtc_engine: @@ -14,7 +14,7 @@ packages: description: name: agora_rtc_engine sha256: "6559294d18ce4445420e19dbdba10fb58cac955cd8f22dbceae26716e194d70e" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.5.3" agora_rtm: @@ -22,7 +22,7 @@ packages: description: name: agora_rtm sha256: "3cd8e25ecfccbb2e8ca5a70b173bff080dab782e233f9b40f483adbd31dd38fb" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.2.5" agora_token_generator: @@ -30,7 +30,7 @@ packages: description: name: agora_token_generator sha256: eeb53d753430b6d6227b05ace89655cd7990b3137a236937825699d528377904 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.0.0" analyzer: @@ -38,7 +38,7 @@ packages: description: name: analyzer sha256: f51c8499b35f9b26820cfe914828a6a98a94efd5cc78b37bb7d03debae3a1d08 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "8.4.1" ansicolor: @@ -46,7 +46,7 @@ packages: description: name: ansicolor sha256: "50e982d500bc863e1d703448afdbf9e5a72eb48840a4f766fa361ffd6877055f" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.0.3" app_settings: @@ -54,7 +54,7 @@ packages: description: name: app_settings sha256: "3e46c561441e5820d3a25339bf8b51b9e45a5f686873851a20c257a530917795" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.1.1" archive: @@ -62,7 +62,7 @@ packages: description: name: archive sha256: "2fde1607386ab523f7a36bb3e7edb43bd58e6edaf2ffb29d8a6d578b297fdbbd" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.0.7" args: @@ -70,7 +70,7 @@ packages: description: name: args sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.7.0" async: @@ -78,7 +78,7 @@ packages: description: name: async sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.13.0" audioplayers: @@ -86,7 +86,7 @@ packages: description: name: audioplayers sha256: "5441fa0ceb8807a5ad701199806510e56afde2b4913d9d17c2f19f2902cf0ae4" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.5.1" audioplayers_android: @@ -94,7 +94,7 @@ packages: description: name: audioplayers_android sha256: "60a6728277228413a85755bd3ffd6fab98f6555608923813ce383b190a360605" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "5.2.1" audioplayers_darwin: @@ -102,7 +102,7 @@ packages: description: name: audioplayers_darwin sha256: "0811d6924904ca13f9ef90d19081e4a87f7297ddc19fc3d31f60af1aaafee333" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.3.0" audioplayers_linux: @@ -110,7 +110,7 @@ packages: description: name: audioplayers_linux sha256: f75bce1ce864170ef5e6a2c6a61cd3339e1a17ce11e99a25bae4474ea491d001 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.2.1" audioplayers_platform_interface: @@ -118,7 +118,7 @@ packages: description: name: audioplayers_platform_interface sha256: "0e2f6a919ab56d0fec272e801abc07b26ae7f31980f912f24af4748763e5a656" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "7.1.1" audioplayers_web: @@ -126,7 +126,7 @@ packages: description: name: audioplayers_web sha256: "1c0f17cec68455556775f1e50ca85c40c05c714a99c5eb1d2d57cc17ba5522d7" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "5.1.1" audioplayers_windows: @@ -134,7 +134,7 @@ packages: description: name: audioplayers_windows sha256: "4048797865105b26d47628e6abb49231ea5de84884160229251f37dfcbe52fd7" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.2.1" boolean_selector: @@ -142,7 +142,7 @@ packages: description: name: boolean_selector sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.1.2" build: @@ -150,7 +150,7 @@ packages: description: name: build sha256: c1668065e9ba04752570ad7e038288559d1e2ca5c6d0131c0f5f55e39e777413 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.0.3" build_config: @@ -158,7 +158,7 @@ packages: description: name: build_config sha256: "4f64382b97504dc2fcdf487d5aae33418e08b4703fc21249e4db6d804a4d0187" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.2.0" build_daemon: @@ -166,7 +166,7 @@ packages: description: name: build_daemon sha256: bf05f6e12cfea92d3c09308d7bcdab1906cd8a179b023269eed00c071004b957 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.1.1" build_runner: @@ -174,7 +174,7 @@ packages: description: name: build_runner sha256: "110c56ef29b5eb367b4d17fc79375fa8c18a6cd7acd92c05bb3986c17a079057" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.10.4" built_collection: @@ -182,7 +182,7 @@ packages: description: name: built_collection sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "5.1.1" built_value: @@ -190,7 +190,7 @@ packages: description: name: built_value sha256: "426cf75afdb23aa74bd4e471704de3f9393f3c7b04c1e2d9c6f1073ae0b8b139" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "8.12.1" cached_network_image: @@ -198,7 +198,7 @@ packages: description: name: cached_network_image sha256: "7c1183e361e5c8b0a0f21a28401eecdbde252441106a9816400dd4c2b2424916" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.4.1" cached_network_image_platform_interface: @@ -206,7 +206,7 @@ packages: description: name: cached_network_image_platform_interface sha256: "35814b016e37fbdc91f7ae18c8caf49ba5c88501813f73ce8a07027a395e2829" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.1.1" cached_network_image_web: @@ -214,7 +214,7 @@ packages: description: name: cached_network_image_web sha256: "980842f4e8e2535b8dbd3d5ca0b1f0ba66bf61d14cc3a17a9b4788a3685ba062" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.3.1" camera: @@ -222,7 +222,7 @@ packages: description: name: camera sha256: dfa8fc5a1adaeb95e7a54d86a5bd56f4bb0e035515354c8ac6d262e35cec2ec8 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.10.6" camera_android: @@ -230,7 +230,7 @@ packages: description: name: camera_android sha256: "50c0d1c4b122163e3d7cdfcd6d4cd8078aac27d0f1cd1e7b3fa69e6b3f06f4b7" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.10.10+14" camera_avfoundation: @@ -238,7 +238,7 @@ packages: description: name: camera_avfoundation sha256: "035b90c1e33c2efad7548f402572078f6e514d4f82be0a315cd6c6af7e855aa8" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.9.22+6" camera_platform_interface: @@ -246,7 +246,7 @@ packages: description: name: camera_platform_interface sha256: "98cfc9357e04bad617671b4c1f78a597f25f08003089dd94050709ae54effc63" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.12.0" camera_web: @@ -254,7 +254,7 @@ packages: description: name: camera_web sha256: "77e53acb64d9de8917424eeb32b5c7c73572d1e00954bbf54a1e609d79a751a2" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.3.5+1" characters: @@ -262,7 +262,7 @@ packages: description: name: characters sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.4.0" checked_yaml: @@ -270,7 +270,7 @@ packages: description: name: checked_yaml sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.0.4" chewie: @@ -278,7 +278,7 @@ packages: description: name: chewie sha256: "44bcfc5f0dfd1de290c87c9d86a61308b3282a70b63435d5557cfd60f54a69ca" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.13.0" clock: @@ -286,7 +286,7 @@ packages: description: name: clock sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.1.2" code_builder: @@ -294,7 +294,7 @@ packages: description: name: code_builder sha256: "11654819532ba94c34de52ff5feb52bd81cba1de00ef2ed622fd50295f9d4243" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.11.0" collection: @@ -302,7 +302,7 @@ packages: description: name: collection sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.19.1" common_utils: @@ -310,7 +310,7 @@ packages: description: name: common_utils sha256: c26884339b13ff99b0739e56f4b02090c84054ed9dd3a045435cd24e7b99c2c1 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.1.0" convert: @@ -318,7 +318,7 @@ packages: description: name: convert sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.1.2" cross_file: @@ -326,7 +326,7 @@ packages: description: name: cross_file sha256: "701dcfc06da0882883a2657c445103380e53e647060ad8d9dfb710c100996608" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.3.5+1" crypto: @@ -334,7 +334,7 @@ packages: description: name: crypto sha256: c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.0.7" csslib: @@ -342,7 +342,7 @@ packages: description: name: csslib sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.0.2" cupertino_icons: @@ -350,7 +350,7 @@ packages: description: name: cupertino_icons sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.0.8" dart_style: @@ -358,7 +358,7 @@ packages: description: name: dart_style sha256: a9c30492da18ff84efe2422ba2d319a89942d93e58eb0b73d32abe822ef54b7b - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.1.3" dbus: @@ -366,7 +366,7 @@ packages: description: name: dbus sha256: "79e0c23480ff85dc68de79e2cd6334add97e48f7f4865d17686dd6ea81a47e8c" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.7.11" decimal: @@ -374,7 +374,7 @@ packages: description: name: decimal sha256: fc706a5618b81e5b367b01dd62621def37abc096f2b46a9bd9068b64c1fa36d0 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.2.4" dio: @@ -382,7 +382,7 @@ packages: description: name: dio sha256: d90ee57923d1828ac14e492ca49440f65477f4bb1263575900be731a3dac66a9 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "5.9.0" dio_web_adapter: @@ -390,7 +390,7 @@ packages: description: name: dio_web_adapter sha256: "7586e476d70caecaf1686d21eee7247ea43ef5c345eab9e0cc3583ff13378d78" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.1.1" easy_localization: @@ -398,7 +398,7 @@ packages: description: name: easy_localization sha256: "2ccdf9db8fe4d9c5a75c122e6275674508fd0f0d49c827354967b8afcc56bbed" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.0.8" easy_logger: @@ -406,7 +406,7 @@ packages: description: name: easy_logger sha256: c764a6e024846f33405a2342caf91c62e357c24b02c04dbc712ef232bf30ffb7 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.0.2" easy_refresh: @@ -414,7 +414,7 @@ packages: description: name: easy_refresh sha256: "486e30abfcaae66c0f2c2798a10de2298eb9dc5e0bb7e1dba9328308968cae0c" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.4.0" event_bus: @@ -422,7 +422,7 @@ packages: description: name: event_bus sha256: "1a55e97923769c286d295240048fc180e7b0768902c3c2e869fe059aafa15304" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.0.1" extended_image: @@ -430,7 +430,7 @@ packages: description: name: extended_image sha256: "85199f9233e03abc2ce2e68cbb2991648666af4a527ae4e6250935be8edfddae" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "9.1.0" extended_image_library: @@ -438,7 +438,7 @@ packages: description: name: extended_image_library sha256: e61dafd94400fff6ef7ed1523d445ff3af137f198f3228e4a3107bc5b4bec5d1 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.0.6" fake_async: @@ -446,7 +446,7 @@ packages: description: name: fake_async sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.3.3" ffi: @@ -454,7 +454,7 @@ packages: description: name: ffi sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.1.4" file: @@ -462,7 +462,7 @@ packages: description: name: file sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "7.0.1" file_selector_linux: @@ -470,7 +470,7 @@ packages: description: name: file_selector_linux sha256: "2567f398e06ac72dcf2e98a0c95df2a9edd03c2c2e0cacd4780f20cdf56263a0" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.9.4" file_selector_macos: @@ -478,7 +478,7 @@ packages: description: name: file_selector_macos sha256: "5e0bbe9c312416f1787a68259ea1505b52f258c587f12920422671807c4d618a" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.9.5" file_selector_platform_interface: @@ -486,7 +486,7 @@ packages: description: name: file_selector_platform_interface sha256: "35e0bd61ebcdb91a3505813b055b09b79dfdc7d0aee9c09a7ba59ae4bb13dc85" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.7.0" file_selector_windows: @@ -494,7 +494,7 @@ packages: description: name: file_selector_windows sha256: "62197474ae75893a62df75939c777763d39c2bc5f73ce5b88497208bc269abfd" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.9.3+5" fixnum: @@ -502,7 +502,7 @@ packages: description: name: fixnum sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.1.1" flustars: @@ -510,7 +510,7 @@ packages: description: name: flustars sha256: "7019ab8d68c0d4759ee122644d91a165d450b0492717f9e7e9d0ce277dcf664b" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.0.1" flutter: @@ -523,7 +523,7 @@ packages: description: name: flutter_cache_manager sha256: "400b6592f16a4409a7f2bb929a9a7e38c72cceb8ffb99ee57bbf2cb2cecf8386" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.4.1" flutter_lints: @@ -531,7 +531,7 @@ packages: description: name: flutter_lints sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "5.0.0" flutter_localizations: @@ -544,7 +544,7 @@ packages: description: name: flutter_native_splash sha256: "4fb9f4113350d3a80841ce05ebf1976a36de622af7d19aca0ca9a9911c7ff002" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.4.7" flutter_oss_aliyun: @@ -552,7 +552,7 @@ packages: description: name: flutter_oss_aliyun sha256: "8280c1e8dfb792dec6449d1e6052e1d3492b3b3a1dfee456cc41d3f31b4cbc26" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.4.2" flutter_plugin_android_lifecycle: @@ -560,7 +560,7 @@ packages: description: name: flutter_plugin_android_lifecycle sha256: ee8068e0e1cd16c4a82714119918efdeed33b3ba7772c54b5d094ab53f9b7fd1 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.0.33" flutter_screenutil: @@ -568,7 +568,7 @@ packages: description: name: flutter_screenutil sha256: "8239210dd68bee6b0577aa4a090890342d04a136ce1c81f98ee513fc0ce891de" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "5.9.3" flutter_slidable: @@ -576,7 +576,7 @@ packages: description: name: flutter_slidable sha256: a857de7ea701f276fd6a6c4c67ae885b60729a3449e42766bb0e655171042801 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.1.2" flutter_smart_dialog: @@ -584,7 +584,7 @@ packages: description: name: flutter_smart_dialog sha256: "0852df132cb03fd8fc5144eb404c31eb7eb50c22aecb1cc2504f2f598090d756" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.9.8+9" flutter_svga: @@ -592,7 +592,7 @@ packages: description: name: flutter_svga sha256: "8b96237fd33c80f3e9850245515d41c70520a4bcb9f3415e96b53fb798e6ab0a" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.0.8" flutter_swiper_null_safety: @@ -600,7 +600,7 @@ packages: description: name: flutter_swiper_null_safety sha256: "5a855e0080d035c08e82f8b7fd2f106344943a30c9ab483b2584860a2f22eaaf" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.0.2" flutter_test: @@ -618,7 +618,7 @@ packages: description: name: fluwx sha256: "7e92d2000ee49c5262a88c51ea2d22b91a753d5b29df27cc264bb0a115d65373" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "5.7.5" get: @@ -626,7 +626,7 @@ packages: description: name: get sha256: "5ed34a7925b85336e15d472cc4cfe7d9ebf4ab8e8b9f688585bf6b50f4c3d79a" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.7.3" get_storage: @@ -634,7 +634,7 @@ packages: description: name: get_storage sha256: "39db1fffe779d0c22b3a744376e86febe4ade43bf65e06eab5af707dc84185a2" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.1.1" glob: @@ -642,7 +642,7 @@ packages: description: name: glob sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.1.3" graphs: @@ -650,7 +650,7 @@ packages: description: name: graphs sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.3.2" html: @@ -658,7 +658,7 @@ packages: description: name: html sha256: "6d1264f2dffa1b1101c25a91dff0dc2daee4c18e87cd8538729773c073dbf602" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.15.6" http: @@ -666,7 +666,7 @@ packages: description: name: http sha256: "87721a4a50b19c7f1d49001e51409bddc46303966ce89a65af4f4e6004896412" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.6.0" http_client_helper: @@ -674,7 +674,7 @@ packages: description: name: http_client_helper sha256: "8a9127650734da86b5c73760de2b404494c968a3fd55602045ffec789dac3cb1" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.0.0" http_multi_server: @@ -682,7 +682,7 @@ packages: description: name: http_multi_server sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.2.2" http_parser: @@ -690,7 +690,7 @@ packages: description: name: http_parser sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.1.2" im_flutter_sdk: @@ -698,7 +698,7 @@ packages: description: name: im_flutter_sdk sha256: "5f81988c5edf14a4e3868b9c47f01de2ee355e2203ae5bd95d7cacfe30e15d97" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.15.2" im_flutter_sdk_android: @@ -706,7 +706,7 @@ packages: description: name: im_flutter_sdk_android sha256: ce4e01f1374a6cf20bb46f6774e1effbde5c014fd1cd3003b6604813e4fe9e71 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.15.2" im_flutter_sdk_interface: @@ -714,7 +714,7 @@ packages: description: name: im_flutter_sdk_interface sha256: "08ad3ce9fc935e24272bce34aebfd9b3c3c30aab2b9e7d4b2e759acf4a4874f5" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.15.2" im_flutter_sdk_ios: @@ -722,7 +722,7 @@ packages: description: name: im_flutter_sdk_ios sha256: "11300c086f5821730224932c28860198ef5d879f7941f9158dddee499f7bb60e" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.15.2" image: @@ -730,7 +730,7 @@ packages: description: name: image sha256: "4e973fcf4caae1a4be2fa0a13157aa38a8f9cb049db6529aa00b4d71abc4d928" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.5.4" image_picker: @@ -738,7 +738,7 @@ packages: description: name: image_picker sha256: "021834d9c0c3de46bf0fe40341fa07168407f694d9b2bb18d532dc1261867f7a" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.1.2" image_picker_android: @@ -746,7 +746,7 @@ packages: description: name: image_picker_android sha256: "317a5d961cec5b34e777b9252393f2afbd23084aa6e60fcf601dcf6341b9ebeb" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.8.12+23" image_picker_for_web: @@ -754,7 +754,7 @@ packages: description: name: image_picker_for_web sha256: "66257a3191ab360d23a55c8241c91a6e329d31e94efa7be9cf7a212e65850214" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.1.1" image_picker_ios: @@ -762,7 +762,7 @@ packages: description: name: image_picker_ios sha256: "997d100ce1dda5b1ba4085194c5e36c9f8a1fb7987f6a36ab677a344cd2dc986" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.8.13+2" image_picker_linux: @@ -770,7 +770,7 @@ packages: description: name: image_picker_linux sha256: "1f81c5f2046b9ab724f85523e4af65be1d47b038160a8c8deed909762c308ed4" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.2.2" image_picker_macos: @@ -778,7 +778,7 @@ packages: description: name: image_picker_macos sha256: "86f0f15a309de7e1a552c12df9ce5b59fe927e71385329355aec4776c6a8ec91" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.2.2+1" image_picker_platform_interface: @@ -786,7 +786,7 @@ packages: description: name: image_picker_platform_interface sha256: "567e056716333a1647c64bb6bd873cff7622233a5c3f694be28a583d4715690c" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.11.1" image_picker_windows: @@ -794,7 +794,7 @@ packages: description: name: image_picker_windows sha256: d248c86554a72b5495a31c56f060cf73a41c7ff541689327b1a7dbccc33adfae - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.2.2" intl: @@ -802,7 +802,7 @@ packages: description: name: intl sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.20.2" io: @@ -810,7 +810,7 @@ packages: description: name: io sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.0.5" iris_method_channel: @@ -818,7 +818,7 @@ packages: description: name: iris_method_channel sha256: bfb5cfc6c6eae42da8cd1b35977a72d8b8881848a5dfc3d672e4760a907d11a0 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.2.4" js: @@ -826,7 +826,7 @@ packages: description: name: js sha256: "53385261521cc4a0c4658fd0ad07a7d14591cf8fc33abbceae306ddb974888dc" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.7.2" json_annotation: @@ -834,7 +834,7 @@ packages: description: name: json_annotation sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.9.0" json_serializable: @@ -842,7 +842,7 @@ packages: description: name: json_serializable sha256: c5b2ee75210a0f263c6c7b9eeea80553dbae96ea1bf57f02484e806a3ffdffa3 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.11.2" leak_tracker: @@ -850,7 +850,7 @@ packages: description: name: leak_tracker sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "11.0.2" leak_tracker_flutter_testing: @@ -858,7 +858,7 @@ packages: description: name: leak_tracker_flutter_testing sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.0.10" leak_tracker_testing: @@ -866,7 +866,7 @@ packages: description: name: leak_tracker_testing sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.0.2" lints: @@ -874,7 +874,7 @@ packages: description: name: lints sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "5.1.1" location_plugin: @@ -889,7 +889,7 @@ packages: description: name: logging sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.3.0" matcher: @@ -897,7 +897,7 @@ packages: description: name: matcher sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.12.17" material_color_utilities: @@ -905,7 +905,7 @@ packages: description: name: material_color_utilities sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.11.1" meta: @@ -913,7 +913,7 @@ packages: description: name: meta sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.16.0" mime: @@ -921,7 +921,7 @@ packages: description: name: mime sha256: "801fd0b26f14a4a58ccb09d5892c3fbdeff209594300a542492cf13fba9d247a" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.0.6" nested: @@ -929,7 +929,7 @@ packages: description: name: nested sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.0.0" octo_image: @@ -937,7 +937,7 @@ packages: description: name: octo_image sha256: "34faa6639a78c7e3cbe79be6f9f96535867e879748ade7d17c9b1ae7536293bd" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.1.0" package_config: @@ -945,7 +945,7 @@ packages: description: name: package_config sha256: f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.2.0" package_info_plus: @@ -953,7 +953,7 @@ packages: description: name: package_info_plus sha256: f69da0d3189a4b4ceaeb1a3defb0f329b3b352517f52bed4290f83d4f06bc08d - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "9.0.0" package_info_plus_platform_interface: @@ -961,7 +961,7 @@ packages: description: name: package_info_plus_platform_interface sha256: "202a487f08836a592a6bd4f901ac69b3a8f146af552bbd14407b6b41e1c3f086" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.2.1" path: @@ -969,7 +969,7 @@ packages: description: name: path sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.9.1" path_drawing: @@ -977,7 +977,7 @@ packages: description: name: path_drawing sha256: bbb1934c0cbb03091af082a6389ca2080345291ef07a5fa6d6e078ba8682f977 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.0.1" path_parsing: @@ -985,7 +985,7 @@ packages: description: name: path_parsing sha256: "883402936929eac138ee0a45da5b0f2c80f89913e6dc3bf77eb65b84b409c6ca" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.1.0" path_provider: @@ -993,7 +993,7 @@ packages: description: name: path_provider sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.1.5" path_provider_android: @@ -1001,7 +1001,7 @@ packages: description: name: path_provider_android sha256: f2c65e21139ce2c3dad46922be8272bb5963516045659e71bb16e151c93b580e - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.2.22" path_provider_foundation: @@ -1009,7 +1009,7 @@ packages: description: name: path_provider_foundation sha256: "6d13aece7b3f5c5a9731eaf553ff9dcbc2eff41087fd2df587fd0fed9a3eb0c4" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.5.1" path_provider_linux: @@ -1017,7 +1017,7 @@ packages: description: name: path_provider_linux sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.2.1" path_provider_platform_interface: @@ -1025,7 +1025,7 @@ packages: description: name: path_provider_platform_interface sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.1.2" path_provider_windows: @@ -1033,7 +1033,7 @@ packages: description: name: path_provider_windows sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.3.0" permission_handler: @@ -1041,7 +1041,7 @@ packages: description: name: permission_handler sha256: bc917da36261b00137bbc8896bf1482169cd76f866282368948f032c8c1caae1 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "12.0.1" permission_handler_android: @@ -1049,7 +1049,7 @@ packages: description: name: permission_handler_android sha256: "1e3bc410ca1bf84662104b100eb126e066cb55791b7451307f9708d4007350e6" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "13.0.1" permission_handler_apple: @@ -1057,7 +1057,7 @@ packages: description: name: permission_handler_apple sha256: f000131e755c54cf4d84a5d8bd6e4149e262cc31c5a8b1d698de1ac85fa41023 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "9.4.7" permission_handler_html: @@ -1065,7 +1065,7 @@ packages: description: name: permission_handler_html sha256: "38f000e83355abb3392140f6bc3030660cfaef189e1f87824facb76300b4ff24" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.1.3+5" permission_handler_platform_interface: @@ -1073,7 +1073,7 @@ packages: description: name: permission_handler_platform_interface sha256: eb99b295153abce5d683cac8c02e22faab63e50679b937fa1bf67d58bb282878 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.3.0" permission_handler_windows: @@ -1081,7 +1081,7 @@ packages: description: name: permission_handler_windows sha256: "1a790728016f79a41216d88672dbc5df30e686e811ad4e698bfc51f76ad91f1e" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.2.1" petitparser: @@ -1089,7 +1089,7 @@ packages: description: name: petitparser sha256: "1a97266a94f7350d30ae522c0af07890c70b8e62c71e8e3920d1db4d23c057d1" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "7.0.1" photo_manager: @@ -1097,7 +1097,7 @@ packages: description: name: photo_manager sha256: "12c8873ec2e7488dd6a0cebcb3c4f1d6c51db34ba696c973faf121b53ffd210e" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.8.2" photo_manager_image_provider: @@ -1105,7 +1105,7 @@ packages: description: name: photo_manager_image_provider sha256: b6015b67b32f345f57cf32c126f871bced2501236c405aafaefa885f7c821e4f - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.2.0" platform: @@ -1113,7 +1113,7 @@ packages: description: name: platform sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.1.6" plugin_platform_interface: @@ -1121,7 +1121,7 @@ packages: description: name: plugin_platform_interface sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.1.8" pointycastle: @@ -1129,7 +1129,7 @@ packages: description: name: pointycastle sha256: "92aa3841d083cc4b0f4709b5c74fd6409a3e6ba833ffc7dc6a8fee096366acf5" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.0.0" pool: @@ -1137,7 +1137,7 @@ packages: description: name: pool sha256: "978783255c543aa3586a1b3c21f6e9d720eb315376a915872c61ef8b5c20177d" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.5.2" posix: @@ -1145,7 +1145,7 @@ packages: description: name: posix sha256: "6323a5b0fa688b6a010df4905a56b00181479e6d10534cecfecede2aa55add61" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.0.3" protobuf: @@ -1153,7 +1153,7 @@ packages: description: name: protobuf sha256: de9c9eb2c33f8e933a42932fe1dc504800ca45ebc3d673e6ed7f39754ee4053e - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.2.0" provider: @@ -1161,7 +1161,7 @@ packages: description: name: provider sha256: "4e82183fa20e5ca25703ead7e05de9e4cceed1fbd1eadc1ac3cb6f565a09f272" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.1.5+1" pub_semver: @@ -1169,7 +1169,7 @@ packages: description: name: pub_semver sha256: "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.2.0" pubspec_parse: @@ -1177,7 +1177,7 @@ packages: description: name: pubspec_parse sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.5.0" rational: @@ -1185,7 +1185,7 @@ packages: description: name: rational sha256: cb808fb6f1a839e6fc5f7d8cb3b0a10e1db48b3be102de73938c627f0b636336 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.2.3" record: @@ -1193,7 +1193,7 @@ packages: description: name: record sha256: "6bad72fb3ea6708d724cf8b6c97c4e236cf9f43a52259b654efeb6fd9b737f1f" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.1.2" record_android: @@ -1201,7 +1201,7 @@ packages: description: name: record_android sha256: "9aaf3f151e61399b09bd7c31eb5f78253d2962b3f57af019ac5a2d1a3afdcf71" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.4.5" record_ios: @@ -1209,7 +1209,7 @@ packages: description: name: record_ios sha256: "69fcd37c6185834e90254573599a9165db18a2cbfa266b6d1e46ffffeb06a28c" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.1.5" record_linux: @@ -1217,7 +1217,7 @@ packages: description: name: record_linux sha256: "235b1f1fb84e810f8149cc0c2c731d7d697f8d1c333b32cb820c449bf7bb72d8" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.2.1" record_macos: @@ -1225,7 +1225,7 @@ packages: description: name: record_macos sha256: "842ea4b7e95f4dd237aacffc686d1b0ff4277e3e5357865f8d28cd28bc18ed95" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.1.2" record_platform_interface: @@ -1233,7 +1233,7 @@ packages: description: name: record_platform_interface sha256: b0065fdf1ec28f5a634d676724d388a77e43ce7646fb049949f58c69f3fcb4ed - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.4.0" record_web: @@ -1241,7 +1241,7 @@ packages: description: name: record_web sha256: "3feeffbc0913af3021da9810bb8702a068db6bc9da52dde1d19b6ee7cb9edb51" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.2.2" record_windows: @@ -1249,23 +1249,23 @@ packages: description: name: record_windows sha256: "223258060a1d25c62bae18282c16783f28581ec19401d17e56b5205b9f039d78" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.0.7" retrofit: dependency: "direct main" description: name: retrofit - sha256: "84063c18a00d55af41d6b8401edf8473e8c215bd7068ef7ec5e34c60657ffdbe" - url: "https://pub.dev" + sha256: "7d78824afa6eeeaf6ac58220910ee7a97597b39e93360d4bda230b7c6df45089" + url: "https://pub.flutter-io.cn" source: hosted - version: "4.9.1" + version: "4.9.0" retrofit_generator: dependency: "direct dev" description: name: retrofit_generator sha256: "5827551e2496f2c9586e4f23eedd6ce0b519286d2f405f91bf70f342a96b48ce" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "10.0.6" rxdart: @@ -1273,7 +1273,7 @@ packages: description: name: rxdart sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.28.0" sensors_plus: @@ -1281,7 +1281,7 @@ packages: description: name: sensors_plus sha256: "89e2bfc3d883743539ce5774a2b93df61effde40ff958ecad78cd66b1a8b8d52" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.1.2" sensors_plus_platform_interface: @@ -1289,7 +1289,7 @@ packages: description: name: sensors_plus_platform_interface sha256: "58815d2f5e46c0c41c40fb39375d3f127306f7742efe3b891c0b1c87e2b5cd5d" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.0.1" shared_preferences: @@ -1297,7 +1297,7 @@ packages: description: name: shared_preferences sha256: "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.5.3" shared_preferences_android: @@ -1305,7 +1305,7 @@ packages: description: name: shared_preferences_android sha256: "46a46fd64659eff15f4638bbe19de43f9483f0e0bf024a9fb6b3582064bacc7b" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.4.17" shared_preferences_foundation: @@ -1313,7 +1313,7 @@ packages: description: name: shared_preferences_foundation sha256: "4e7eaffc2b17ba398759f1151415869a34771ba11ebbccd1b0145472a619a64f" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.5.6" shared_preferences_linux: @@ -1321,7 +1321,7 @@ packages: description: name: shared_preferences_linux sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.4.1" shared_preferences_platform_interface: @@ -1329,7 +1329,7 @@ packages: description: name: shared_preferences_platform_interface sha256: "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.4.1" shared_preferences_web: @@ -1337,7 +1337,7 @@ packages: description: name: shared_preferences_web sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.4.3" shared_preferences_windows: @@ -1345,7 +1345,7 @@ packages: description: name: shared_preferences_windows sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.4.1" shelf: @@ -1353,7 +1353,7 @@ packages: description: name: shelf sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.4.2" shelf_web_socket: @@ -1361,7 +1361,7 @@ packages: description: name: shelf_web_socket sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.0.0" sky_engine: @@ -1374,7 +1374,7 @@ packages: description: name: source_gen sha256: "07b277b67e0096c45196cbddddf2d8c6ffc49342e88bf31d460ce04605ddac75" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.1.1" source_helper: @@ -1382,7 +1382,7 @@ packages: description: name: source_helper sha256: "6a3c6cc82073a8797f8c4dc4572146114a39652851c157db37e964d9c7038723" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.3.8" source_span: @@ -1390,7 +1390,7 @@ packages: description: name: source_span sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.10.1" sp_util: @@ -1398,7 +1398,7 @@ packages: description: name: sp_util sha256: "9da43dce5de79c17a787d0626bf01538d63090ca32521200d22a232171c495dc" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.0.3" sqflite: @@ -1406,7 +1406,7 @@ packages: description: name: sqflite sha256: e2297b1da52f127bc7a3da11439985d9b536f75070f3325e62ada69a5c585d03 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.4.2" sqflite_android: @@ -1414,7 +1414,7 @@ packages: description: name: sqflite_android sha256: ecd684501ebc2ae9a83536e8b15731642b9570dc8623e0073d227d0ee2bfea88 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.4.2+2" sqflite_common: @@ -1422,7 +1422,7 @@ packages: description: name: sqflite_common sha256: "6ef422a4525ecc601db6c0a2233ff448c731307906e92cabc9ba292afaae16a6" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.5.6" sqflite_darwin: @@ -1430,7 +1430,7 @@ packages: description: name: sqflite_darwin sha256: "279832e5cde3fe99e8571879498c9211f3ca6391b0d818df4e17d9fff5c6ccb3" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.4.2" sqflite_platform_interface: @@ -1438,7 +1438,7 @@ packages: description: name: sqflite_platform_interface sha256: "8dd4515c7bdcae0a785b0062859336de775e8c65db81ae33dd5445f35be61920" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.4.0" stack_trace: @@ -1446,7 +1446,7 @@ packages: description: name: stack_trace sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.12.1" stream_channel: @@ -1454,7 +1454,7 @@ packages: description: name: stream_channel sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.1.4" stream_transform: @@ -1462,7 +1462,7 @@ packages: description: name: stream_transform sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.1.1" string_scanner: @@ -1470,7 +1470,7 @@ packages: description: name: string_scanner sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.4.1" synchronized: @@ -1478,7 +1478,7 @@ packages: description: name: synchronized sha256: c254ade258ec8282947a0acbbc90b9575b4f19673533ee46f2f6e9b3aeefd7c0 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.4.0" tdesign_flutter: @@ -1486,7 +1486,7 @@ packages: description: name: tdesign_flutter sha256: cf166a5fdbbfd9129305d2c2906633c8d0151bbb2d0a6fbcf901bdd76726a555 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.2.6" tdesign_flutter_adaptation: @@ -1494,7 +1494,7 @@ packages: description: name: tdesign_flutter_adaptation sha256: "707bbc52ec8b5872ea808500200f402007acf24c03a1cc823a3be2113c1d813a" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.32.0" term_glyph: @@ -1502,7 +1502,7 @@ packages: description: name: term_glyph sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.2.2" test_api: @@ -1510,7 +1510,7 @@ packages: description: name: test_api sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.7.6" typed_data: @@ -1518,7 +1518,7 @@ packages: description: name: typed_data sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.4.0" universal_io: @@ -1526,7 +1526,7 @@ packages: description: name: universal_io sha256: f63cbc48103236abf48e345e07a03ce5757ea86285ed313a6a032596ed9301e2 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.3.1" url_launcher: @@ -1534,7 +1534,7 @@ packages: description: name: url_launcher sha256: f6a7e5c4835bb4e3026a04793a4199ca2d14c739ec378fdfe23fc8075d0439f8 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.3.2" url_launcher_android: @@ -1542,7 +1542,7 @@ packages: description: name: url_launcher_android sha256: "767344bf3063897b5cf0db830e94f904528e6dd50a6dfaf839f0abf509009611" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.3.28" url_launcher_ios: @@ -1550,7 +1550,7 @@ packages: description: name: url_launcher_ios sha256: cfde38aa257dae62ffe79c87fab20165dfdf6988c1d31b58ebf59b9106062aad - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.3.6" url_launcher_linux: @@ -1558,7 +1558,7 @@ packages: description: name: url_launcher_linux sha256: d5e14138b3bc193a0f63c10a53c94b91d399df0512b1f29b94a043db7482384a - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.2.2" url_launcher_macos: @@ -1566,7 +1566,7 @@ packages: description: name: url_launcher_macos sha256: "368adf46f71ad3c21b8f06614adb38346f193f3a59ba8fe9a2fd74133070ba18" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.2.5" url_launcher_platform_interface: @@ -1574,7 +1574,7 @@ packages: description: name: url_launcher_platform_interface sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.3.2" url_launcher_web: @@ -1582,7 +1582,7 @@ packages: description: name: url_launcher_web sha256: "4bd2b7b4dc4d4d0b94e5babfffbca8eac1a126c7f3d6ecbc1a11013faa3abba2" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.4.1" url_launcher_windows: @@ -1590,7 +1590,7 @@ packages: description: name: url_launcher_windows sha256: "712c70ab1b99744ff066053cbe3e80c73332b38d46e5e945c98689b2e66fc15f" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.1.5" uuid: @@ -1598,7 +1598,7 @@ packages: description: name: uuid sha256: a11b666489b1954e01d992f3d601b1804a33937b5a8fe677bd26b8a9f96f96e8 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.5.2" vector_math: @@ -1606,7 +1606,7 @@ packages: description: name: vector_math sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.2.0" video_player: @@ -1614,7 +1614,7 @@ packages: description: name: video_player sha256: "096bc28ce10d131be80dfb00c223024eb0fba301315a406728ab43dd99c45bdf" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.10.1" video_player_android: @@ -1622,7 +1622,7 @@ packages: description: name: video_player_android sha256: "3f7ef3fb7b29f510e58f4d56b6ffbc3463b1071f2cf56e10f8d25f5b991ed85b" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.8.21" video_player_avfoundation: @@ -1630,7 +1630,7 @@ packages: description: name: video_player_avfoundation sha256: e4d33b79a064498c6eb3a6a492b6a5012573d4943c28d566caf1a6c0840fe78d - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.8.8" video_player_platform_interface: @@ -1638,7 +1638,7 @@ packages: description: name: video_player_platform_interface sha256: "57c5d73173f76d801129d0531c2774052c5a7c11ccb962f1830630decd9f24ec" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.6.0" video_player_web: @@ -1646,7 +1646,7 @@ packages: description: name: video_player_web sha256: "9f3c00be2ef9b76a95d94ac5119fb843dca6f2c69e6c9968f6f2b6c9e7afbdeb" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "2.4.0" video_thumbnail: @@ -1654,7 +1654,7 @@ packages: description: name: video_thumbnail sha256: "181a0c205b353918954a881f53a3441476b9e301641688a581e0c13f00dc588b" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.5.6" visibility_detector: @@ -1662,7 +1662,7 @@ packages: description: name: visibility_detector sha256: dd5cc11e13494f432d15939c3aa8ae76844c42b723398643ce9addb88a5ed420 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "0.4.0+2" vm_service: @@ -1670,7 +1670,7 @@ packages: description: name: vm_service sha256: "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "15.0.2" wakelock_plus: @@ -1678,7 +1678,7 @@ packages: description: name: wakelock_plus sha256: "9296d40c9adbedaba95d1e704f4e0b434be446e2792948d0e4aa977048104228" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.4.0" wakelock_plus_platform_interface: @@ -1686,7 +1686,7 @@ packages: description: name: wakelock_plus_platform_interface sha256: "036deb14cd62f558ca3b73006d52ce049fabcdcb2eddfe0bf0fe4e8a943b5cf2" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.3.0" watcher: @@ -1694,7 +1694,7 @@ packages: description: name: watcher sha256: "592ab6e2892f67760543fb712ff0177f4ec76c031f02f5b4ff8d3fc5eb9fb61a" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.1.4" web: @@ -1702,7 +1702,7 @@ packages: description: name: web sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.1.1" web_socket: @@ -1710,7 +1710,7 @@ packages: description: name: web_socket sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.0.1" web_socket_channel: @@ -1718,7 +1718,7 @@ packages: description: name: web_socket_channel sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.0.3" wechat_assets_picker: @@ -1726,7 +1726,7 @@ packages: description: name: wechat_assets_picker sha256: c307e50394c1e6dfcd5c4701e84efb549fce71444fedcf2e671c50d809b3e2a1 - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "9.8.0" wechat_camera_picker: @@ -1734,7 +1734,7 @@ packages: description: name: wechat_camera_picker sha256: "776ce32feda72d84b63425533a27d3b822bfb93cc063d2aef3cc6d788769f36b" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "4.4.0" wechat_picker_library: @@ -1742,7 +1742,7 @@ packages: description: name: wechat_picker_library sha256: "5cb61b9aa935b60da5b043f8446fbb9c5077419f20ccc4856bf444aec4f44bc1" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.0.7" win32: @@ -1750,7 +1750,7 @@ packages: description: name: win32 sha256: d7cb55e04cd34096cd3a79b3330245f54cb96a370a1c27adb3c84b917de8b08e - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "5.15.0" xdg_directories: @@ -1758,7 +1758,7 @@ packages: description: name: xdg_directories sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "1.1.0" xml: @@ -1766,7 +1766,7 @@ packages: description: name: xml sha256: "971043b3a0d3da28727e40ed3e0b5d18b742fa5a68665cca88e74b7876d5e025" - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "6.6.1" yaml: @@ -1774,7 +1774,7 @@ packages: description: name: yaml sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce - url: "https://pub.dev" + url: "https://pub.flutter-io.cn" source: hosted version: "3.1.3" sdks: