diff --git a/frontend/mobile-app/lib/core/services/deposit_service.dart b/frontend/mobile-app/lib/core/services/deposit_service.dart index 080b7c49..c580aa91 100644 --- a/frontend/mobile-app/lib/core/services/deposit_service.dart +++ b/frontend/mobile-app/lib/core/services/deposit_service.dart @@ -90,31 +90,15 @@ class DepositService { /// 获取充值地址 /// - /// 优先从本地存储获取,如果没有则从服务器获取 + /// 始终从服务器获取,确保返回当前登录用户的正确地址 + /// 不使用本地缓存,避免切换账号后显示错误的地址 /// 返回用户的 KAVA 和 BSC 充值地址 Future getDepositAddresses() async { try { debugPrint('获取充值地址...'); - // 先尝试从本地存储读取 - final kavaAddress = await _secureStorage.read(key: StorageKeys.walletAddressKava); - final bscAddress = await _secureStorage.read(key: StorageKeys.walletAddressBsc); - final dstAddress = await _secureStorage.read(key: StorageKeys.walletAddressDst); - - if (kavaAddress != null && kavaAddress.isNotEmpty && - bscAddress != null && bscAddress.isNotEmpty && - dstAddress != null && dstAddress.isNotEmpty) { - debugPrint('从本地存储获取充值地址: kava=$kavaAddress, bsc=$bscAddress, dst=$dstAddress'); - return DepositAddressResponse( - kavaAddress: kavaAddress, - bscAddress: bscAddress, - dstAddress: dstAddress, - isValid: true, - ); - } - - // 本地没有,从服务器获取 - debugPrint('本地无缓存,从服务器获取钱包地址...'); + // 始终从服务器获取,确保是当前用户的地址 + debugPrint('从服务器获取钱包地址...'); final response = await _apiClient.get('/user/wallet'); if (response.statusCode == 200) {