feat: harden geofence and distance diagnostics

This commit is contained in:
Artem Kokos
2026-05-01 09:13:23 +07:00
parent 872ddf9513
commit 91a494adf5
20 changed files with 1639 additions and 260 deletions

View File

@@ -200,7 +200,8 @@ class _HomeEditScreenState extends ConsumerState<HomeEditScreen> {
padding: EdgeInsets.only(left: 40, bottom: 4),
child: Text(
'Проверка раз в ~15 мин (ограничение Android).\n'
'Работает в фоне, без постоянной нотификации.',
'Работает только для текущего активного дома.\n'
'Нужны фоновые разрешения на геолокацию и уведомления.',
style: TextStyle(fontSize: 11, color: Colors.white24),
),
),
@@ -327,16 +328,17 @@ class _HomeEditScreenState extends ConsumerState<HomeEditScreen> {
// Синхронизировать фоновый таск с новыми настройками
final allHomes = ref.read(homesProvider);
await syncGeofenceTask(allHomes);
await syncGeofenceTask(
allHomes,
currentHome: ref.read(currentHomeProvider),
);
if (mounted) Navigator.of(context).pop();
} catch (e) {
if (mounted) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: Text(
'Не удалось сохранить дом: ${describeLoadError(e)}',
),
content: Text('Не удалось сохранить дом: ${describeLoadError(e)}'),
),
);
}