diff --git a/client/lib/l10n/app_text.dart b/client/lib/l10n/app_text.dart index 53dc9cb..4983839 100644 --- a/client/lib/l10n/app_text.dart +++ b/client/lib/l10n/app_text.dart @@ -98,7 +98,7 @@ abstract class AppText { // 设备管理(P6):在线状态 / 操作 / 危险确认 String get devOnline; String get devOffline; - String get devLastLogin; // 「最后登录」前缀 + String get devLastOnline; // 「最后在线」前缀(离线设备,取 last_seen) String get devNeverLogin; String get devForceLogout; String get devClearLogin; diff --git a/client/lib/l10n/strings_en.dart b/client/lib/l10n/strings_en.dart index 109a3b9..3f25271 100644 --- a/client/lib/l10n/strings_en.dart +++ b/client/lib/l10n/strings_en.dart @@ -142,7 +142,7 @@ class StringsEn extends AppText { @override String get devOffline => 'Offline'; @override - String get devLastLogin => 'Last login'; + String get devLastOnline => 'Last online'; @override String get devNeverLogin => 'Never logged in'; @override diff --git a/client/lib/l10n/strings_zh.dart b/client/lib/l10n/strings_zh.dart index 2defd44..2c5cf1e 100644 --- a/client/lib/l10n/strings_zh.dart +++ b/client/lib/l10n/strings_zh.dart @@ -141,7 +141,7 @@ class StringsZh extends AppText { @override String get devOffline => '离线'; @override - String get devLastLogin => '最后登录'; + String get devLastOnline => '最后在线'; @override String get devNeverLogin => '从未登录'; @override diff --git a/client/lib/widgets/account_screens.dart b/client/lib/widgets/account_screens.dart index 69de294..e137e59 100644 --- a/client/lib/widgets/account_screens.dart +++ b/client/lib/widgets/account_screens.dart @@ -185,7 +185,9 @@ class DevicesScreen extends ConsumerWidget { final name = d.name.isNotEmpty ? d.name : d.platformKind.label; final subParts = [d.platformKind.label]; if (d.clientVersion.isNotEmpty) subParts.add(d.clientVersion); - if (!d.online) subParts.add('${t.devLastLogin} ${_rel(d.lastLogin)}'); + // 离线设备显示「最后在线」——用 last_seen(连接/用量/~15s 会话轮询都会刷新), + // 而非 last_login(仅登录那一刻);否则一直在线的设备会错显成登录时间(如 13 小时前)。 + if (!d.online) subParts.add('${t.devLastOnline} ${_rel(d.lastSeen)}'); return Container( decoration: BoxDecoration(border: divider ? Border(bottom: BorderSide(color: c.border)) : null),