diff --git a/lib/app/map/_lib/managers/monitor.dart b/lib/app/map/_lib/managers/monitor.dart index 414c6f761..114848300 100644 --- a/lib/app/map/_lib/managers/monitor.dart +++ b/lib/app/map/_lib/managers/monitor.dart @@ -114,7 +114,6 @@ class MonitorMapLayerManager extends MapLayerManager { if (location.isValid) { await controller.animateCamera(CameraUpdate.newLatLngZoom(location, 7.4)); - TalkerManager.instance.info('Moved Camera to $location'); } else { await controller.animateCamera(CameraUpdate.newLatLngZoom(DpipMap.kTaiwanCenter, 6.4)); TalkerManager.instance.info('Moved Camera to ${DpipMap.kTaiwanCenter}'); @@ -534,23 +533,16 @@ class MonitorMapLayerManager extends MapLayerManager { // rts await controller.setLayerVisibility(rtsLayerId, false); - TalkerManager.instance.info('Hiding Layer "$rtsLayerId"'); // intensity await controller.setLayerVisibility(intensityLayerId, false); - TalkerManager.instance.info('Hiding Layer "$intensityLayerId"'); await controller.setLayerVisibility(intensity0LayerId, false); - TalkerManager.instance.info('Hiding Layer "$intensity0LayerId"'); await controller.setLayerVisibility(boxLayerId, false); - TalkerManager.instance.info('Hiding Layer "$boxLayerId"'); // eew await controller.setLayerVisibility(epicenterLayerId, false); - TalkerManager.instance.info('Hiding Layer "$epicenterLayerId"'); await controller.setLayerVisibility(pWaveLayerId, false); - TalkerManager.instance.info('Hiding Layer "$pWaveLayerId"'); await controller.setLayerVisibility(sWaveLayerId, false); - TalkerManager.instance.info('Hiding Layer "$sWaveLayerId"'); visible = false; } catch (e, s) { @@ -577,21 +569,14 @@ class MonitorMapLayerManager extends MapLayerManager { final hasBox = GlobalProviders.data.rts?.box.isNotEmpty ?? false; await controller.setLayerVisibility(rtsLayerId, !hasBox); - TalkerManager.instance.info('Showing Layer "$rtsLayerId"'); await controller.setLayerVisibility(intensityLayerId, hasBox); - TalkerManager.instance.info('Showing Layer "$intensityLayerId"'); await controller.setLayerVisibility(intensity0LayerId, hasBox); - TalkerManager.instance.info('Showing Layer "$intensity0LayerId"'); await controller.setLayerVisibility(boxLayerId, hasBox); - TalkerManager.instance.info('Showing Layer "$boxLayerId"'); await controller.setLayerVisibility(epicenterLayerId, true); - TalkerManager.instance.info('Showing Layer "$epicenterLayerId"'); await controller.setLayerVisibility(pWaveLayerId, true); - TalkerManager.instance.info('Showing Layer "$pWaveLayerId"'); await controller.setLayerVisibility(sWaveLayerId, true); - TalkerManager.instance.info('Showing Layer "$sWaveLayerId"'); await _focus(); diff --git a/lib/app/map/_lib/managers/precipitation.dart b/lib/app/map/_lib/managers/precipitation.dart index 03f008b57..25c2d03c5 100644 --- a/lib/app/map/_lib/managers/precipitation.dart +++ b/lib/app/map/_lib/managers/precipitation.dart @@ -66,7 +66,6 @@ class PrecipitationMapLayerManager extends MapLayerManager { onTimeChanged?.call(time); - TalkerManager.instance.info('Updated Precipitation data to "$time"'); } catch (e, s) { TalkerManager.instance.error('PrecipitationMapLayerManager.setPrecipitationTime', e, s); } finally { @@ -83,10 +82,8 @@ class PrecipitationMapLayerManager extends MapLayerManager { final hideLayerId = '$layerId-${currentPrecipitationInterval.value}'; await controller.setLayerVisibility(showLayerId, true); - TalkerManager.instance.info('Showing Layer "$showLayerId"'); await controller.setLayerVisibility(hideLayerId, false); - TalkerManager.instance.info('Hiding Layer "$hideLayerId"'); currentPrecipitationInterval.value = interval; } catch (e, s) { @@ -100,7 +97,6 @@ class PrecipitationMapLayerManager extends MapLayerManager { if (location.isValid) { await controller.animateCamera(CameraUpdate.newLatLngZoom(location, 7.4)); - TalkerManager.instance.info('Moved Camera to $location'); } else { await controller.animateCamera(CameraUpdate.newLatLngZoom(DpipMap.kTaiwanCenter, 6.4)); TalkerManager.instance.info('Moved Camera to ${DpipMap.kTaiwanCenter}'); @@ -150,7 +146,6 @@ class PrecipitationMapLayerManager extends MapLayerManager { final properties = GeojsonSourceProperties(data: data); await controller.addSource(sourceId, properties); - TalkerManager.instance.info('Added Source "$sourceId"'); if (!context.mounted) return; } @@ -223,9 +218,7 @@ class PrecipitationMapLayerManager extends MapLayerManager { properties.entries.map( (entry) => controller .addLayer(sourceId, '$layerId-${entry.key}', entry.value, belowLayerId: BaseMapLayerIds.userLocation) - .then((value) { - TalkerManager.instance.info('Added Layer "$layerId-${entry.key}"'); - }), + .then((value) {}), ), ); } @@ -247,7 +240,6 @@ class PrecipitationMapLayerManager extends MapLayerManager { try { await controller.setLayerVisibility(hideLayerId, false); - TalkerManager.instance.info('Hiding Layer "$hideLayerId"'); visible = false; } catch (e, s) { @@ -264,7 +256,6 @@ class PrecipitationMapLayerManager extends MapLayerManager { try { await controller.setLayerVisibility(showLayerId, true); - TalkerManager.instance.info('Showing Layer "$showLayerId"'); await _focus(); @@ -282,11 +273,9 @@ class PrecipitationMapLayerManager extends MapLayerManager { for (final interval in precipitationIntervals) { await controller.removeLayer('$layerId-$interval'); - TalkerManager.instance.info('Removed Layer "$layerId-$interval"'); } await controller.removeSource(sourceId); - TalkerManager.instance.info('Removed Source "$sourceId"'); } catch (e, s) { TalkerManager.instance.error('PrecipitationMapLayerManager.remove', e, s); } diff --git a/lib/app/map/_lib/managers/radar.dart b/lib/app/map/_lib/managers/radar.dart index 0a217fe42..8f8a4b622 100644 --- a/lib/app/map/_lib/managers/radar.dart +++ b/lib/app/map/_lib/managers/radar.dart @@ -138,8 +138,6 @@ class RadarMapLayerManager extends MapLayerManager { currentRadarTime.value = time; await _setupAndShowLayer(time); - - TalkerManager.instance.info('Updated Radar tiles to "$time"'); } catch (e, s) { TalkerManager.instance.error('RadarMapLayerManager._updateRadarTileUrl', e, s); } finally { @@ -161,14 +159,12 @@ class RadarMapLayerManager extends MapLayerManager { ); await controller.addSource(sourceId, properties); - TalkerManager.instance.info('Added Source "$sourceId"'); } if (!isLayerExists) { final properties = RasterLayerProperties(visibility: visible ? 'visible' : 'none'); await controller.addLayer(sourceId, layerId, properties, belowLayerId: BaseMapLayerIds.exptechCountyOutline); - TalkerManager.instance.info('Added Layer "$layerId"'); } else if (visible) { await controller.setLayerVisibility(layerId, true); } @@ -209,7 +205,6 @@ class RadarMapLayerManager extends MapLayerManager { try { await _setupAndShowLayer(time); await _hideLayer(time); - TalkerManager.instance.info('Preloaded radar layer: $time'); } catch (e, s) { TalkerManager.instance.error('Failed to preload radar layer: $time', e, s); } @@ -323,7 +318,6 @@ class RadarMapLayerManager extends MapLayerManager { if (location.isValid) { await controller.animateCamera(CameraUpdate.newLatLngZoom(location, 7.4)); - TalkerManager.instance.info('Moved Camera to $location'); } else { await controller.animateCamera(CameraUpdate.newLatLngZoom(DpipMap.kTaiwanCenter, 6.4)); TalkerManager.instance.info('Moved Camera to ${DpipMap.kTaiwanCenter}'); @@ -367,7 +361,6 @@ class RadarMapLayerManager extends MapLayerManager { } visible = false; - TalkerManager.instance.info('Hidden all radar layers'); } catch (e, s) { TalkerManager.instance.error('RadarMapLayerManager.hide', e, s); } @@ -381,7 +374,6 @@ class RadarMapLayerManager extends MapLayerManager { if (currentRadarTime.value != null) { final layerId = MapLayerIds.radar(currentRadarTime.value); await controller.setLayerVisibility(layerId, true); - TalkerManager.instance.info('Showing Layer "$layerId"'); } await _focus(); diff --git a/lib/app/map/_lib/managers/report.dart b/lib/app/map/_lib/managers/report.dart index 519387941..e7f1146a7 100644 --- a/lib/app/map/_lib/managers/report.dart +++ b/lib/app/map/_lib/managers/report.dart @@ -124,7 +124,6 @@ class ReportMapLayerManager extends MapLayerManager { final properties = GeojsonSourceProperties(data: data); await controller.addSource(sourceId, properties); - TalkerManager.instance.info('Added Source "$sourceId"'); if (!context.mounted) return; } @@ -157,8 +156,6 @@ class ReportMapLayerManager extends MapLayerManager { ); await controller.addLayer(sourceId, layerId, properties, belowLayerId: BaseMapLayerIds.userLocation); - - TalkerManager.instance.info('Added Layer "$layerId"'); } didSetup = true; @@ -179,7 +176,6 @@ class ReportMapLayerManager extends MapLayerManager { try { await controller.setLayerVisibility(layerId, false); - TalkerManager.instance.info('Hiding Layer "$layerId"'); visible = false; } catch (e, s) { @@ -199,7 +195,6 @@ class ReportMapLayerManager extends MapLayerManager { initialReportId = null; } else { await controller.setLayerVisibility(layerId, true); - TalkerManager.instance.info('Showing Layer "$layerId"'); await _focus(); } @@ -217,10 +212,7 @@ class ReportMapLayerManager extends MapLayerManager { final sourceId = MapSourceIds.report(); await controller.removeLayer(layerId); - TalkerManager.instance.info('Removed Layer "$layerId"'); - await controller.removeSource(sourceId); - TalkerManager.instance.info('Removed Source "$sourceId"'); } catch (e, s) { TalkerManager.instance.error('ReportMapLayerManager.dispose', e, s); } @@ -261,7 +253,6 @@ class ReportMapLayerManager extends MapLayerManager { final properties = GeojsonSourceProperties(data: data); await controller.addSource(sourceId, properties); - TalkerManager.instance.info('Added Source "$sourceId"'); if (!context.mounted) return; } @@ -276,13 +267,11 @@ class ReportMapLayerManager extends MapLayerManager { ); await controller.addLayer(sourceId, layerId, properties, belowLayerId: BaseMapLayerIds.userLocation); - TalkerManager.instance.info('Added Layer "$layerId"'); } if (focus) await _focus(report); await controller.setLayerVisibility(MapLayerIds.report(), false); - TalkerManager.instance.info('Hiding Layer "$layerId"'); } catch (e, s) { TalkerManager.instance.error('ReportMapLayerManager._addReport', e, s); } @@ -300,18 +289,15 @@ class ReportMapLayerManager extends MapLayerManager { if (isLayerExists) { await controller.removeLayer(layerId); - TalkerManager.instance.info('Removed Layer "$layerId"'); } if (isSourceExists) { await controller.removeSource(sourceId); - TalkerManager.instance.info('Removed Source "$sourceId"'); } if (focus) await _focus(); await controller.setLayerVisibility(MapLayerIds.report(), true); - TalkerManager.instance.info('Showing Layer "$layerId"'); } catch (e, s) { TalkerManager.instance.error('ReportMapLayerManager._removeReport', e, s); } diff --git a/lib/app/map/_lib/managers/temperature.dart b/lib/app/map/_lib/managers/temperature.dart index 9b108b23f..ed91b9659 100644 --- a/lib/app/map/_lib/managers/temperature.dart +++ b/lib/app/map/_lib/managers/temperature.dart @@ -64,8 +64,6 @@ class TemperatureMapLayerManager extends MapLayerManager { await setup(); onTimeChanged?.call(time); - - TalkerManager.instance.info('Updated Temperature data time to "$time"'); } catch (e, s) { TalkerManager.instance.error('TemperatureMapLayerManager.setTemperatureTime', e, s); } finally { @@ -79,10 +77,8 @@ class TemperatureMapLayerManager extends MapLayerManager { if (location.isValid) { await controller.animateCamera(CameraUpdate.newLatLngZoom(location, 7.4)); - TalkerManager.instance.info('Moved Camera to $location'); } else { await controller.animateCamera(CameraUpdate.newLatLngZoom(DpipMap.kTaiwanCenter, 6.4)); - TalkerManager.instance.info('Moved Camera to ${DpipMap.kTaiwanCenter}'); } } catch (e, s) { TalkerManager.instance.error('TemperatureMapLayerManager._focus', e, s); @@ -133,7 +129,6 @@ class TemperatureMapLayerManager extends MapLayerManager { final properties = GeojsonSourceProperties(data: data); await controller.addSource(sourceId, properties); - TalkerManager.instance.info('Added Source "$sourceId"'); if (!context.mounted) return; } @@ -176,7 +171,6 @@ class TemperatureMapLayerManager extends MapLayerManager { ); await controller.addLayer(sourceId, layerId, properties, belowLayerId: BaseMapLayerIds.userLocation); - TalkerManager.instance.info('Added Layer "$layerId"'); } if (isSourceExists && isLayerExists) return; @@ -195,7 +189,6 @@ class TemperatureMapLayerManager extends MapLayerManager { try { await controller.setLayerVisibility(layerId, false); - TalkerManager.instance.info('Hiding Layer "$layerId"'); visible = false; } catch (e, s) { @@ -211,8 +204,6 @@ class TemperatureMapLayerManager extends MapLayerManager { try { await controller.setLayerVisibility(layerId, true); - TalkerManager.instance.info('Showing Layer "$layerId"'); - await _focus(); visible = true; @@ -228,10 +219,7 @@ class TemperatureMapLayerManager extends MapLayerManager { final sourceId = MapSourceIds.temperature(currentTemperatureTime.value); await controller.removeLayer(layerId); - TalkerManager.instance.info('Removed Layer "$layerId"'); - await controller.removeSource(sourceId); - TalkerManager.instance.info('Removed Source "$sourceId"'); } catch (e, s) { TalkerManager.instance.error('TemperatureMapLayerManager.remove', e, s); } diff --git a/lib/app/map/_lib/managers/wind.dart b/lib/app/map/_lib/managers/wind.dart index 355a67534..3768693be 100644 --- a/lib/app/map/_lib/managers/wind.dart +++ b/lib/app/map/_lib/managers/wind.dart @@ -58,8 +58,6 @@ class WindMapLayerManager extends MapLayerManager { await setup(); onTimeChanged?.call(time); - - TalkerManager.instance.info('Updated Wind data time to "$time"'); } catch (e, s) { TalkerManager.instance.error('WindMapLayerManager.setWindTime', e, s); } finally { @@ -111,7 +109,6 @@ class WindMapLayerManager extends MapLayerManager { final properties = GeojsonSourceProperties(data: data); await controller.addSource(sourceId, properties); - TalkerManager.instance.info('Added Source "$sourceId"'); if (!context.mounted) return; } @@ -127,7 +124,6 @@ class WindMapLayerManager extends MapLayerManager { ); await controller.addLayer(sourceId, layerId, properties, belowLayerId: BaseMapLayerIds.userLocation); - TalkerManager.instance.info('Added Layer "$layerId"'); } if (isSourceExists && isLayerExists) return; @@ -146,7 +142,6 @@ class WindMapLayerManager extends MapLayerManager { try { await controller.setLayerVisibility(layerId, false); - TalkerManager.instance.info('Hiding Layer "$layerId"'); visible = false; } catch (e, s) { @@ -162,7 +157,6 @@ class WindMapLayerManager extends MapLayerManager { try { await controller.setLayerVisibility(layerId, true); - TalkerManager.instance.info('Showing Layer "$layerId"'); visible = true; } catch (e, s) { @@ -177,10 +171,7 @@ class WindMapLayerManager extends MapLayerManager { final sourceId = MapSourceIds.wind(currentWindTime.value); await controller.removeLayer(layerId); - TalkerManager.instance.info('Removed Layer "$layerId"'); - await controller.removeSource(sourceId); - TalkerManager.instance.info('Removed Source "$sourceId"'); } catch (e, s) { TalkerManager.instance.error('WindMapLayerManager.dispose', e, s); } diff --git a/lib/core/installation_tracker.dart b/lib/core/installation_tracker.dart index 0483126d4..f1c7d0381 100644 --- a/lib/core/installation_tracker.dart +++ b/lib/core/installation_tracker.dart @@ -5,7 +5,6 @@ import 'package:dpip/utils/log.dart'; final talker = TalkerManager.instance; Future initializeInstallationData() async { - talker.log('--- 開始檢查應用程式安裝狀態 ---'); final PackageInfo packageInfo = await PackageInfo.fromPlatform(); final int? installTime = packageInfo.installTime?.millisecondsSinceEpoch; @@ -20,7 +19,6 @@ Future initializeInstallationData() async { final int? storedInstallTime = Preference.installTime; if (storedInstallTime == null || storedVersion == null) { - talker.info('SharedPreferences 中未找到安裝時間或版本記錄。'); talker.info('這是 App 首次安裝。'); Preference.instance.clear(); @@ -49,5 +47,4 @@ Future initializeInstallationData() async { } else { talker.info('應用程式未重新安裝也未升級。使用現有安裝資料。'); } - talker.log('--- 應用程式安裝狀態檢查結束 ---'); } diff --git a/lib/core/service.dart b/lib/core/service.dart index 2658230d0..f025444ea 100644 --- a/lib/core/service.dart +++ b/lib/core/service.dart @@ -27,7 +27,6 @@ enum ServiceEvent { setAsForeground, setAsBackground, sendPosition, sendDebug, r Future initBackgroundService() async { final isAutoLocationEnabled = GlobalProviders.location.auto; if (!isAutoLocationEnabled) { - TalkerManager.instance.info('自動定位未啟用,不初始化背景服務'); return; } diff --git a/lib/main.dart b/lib/main.dart index 31ababf27..781d67001 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -37,21 +37,21 @@ void main() async { }; await Global.init(); - await DeviceInfo.init(); await Preference.init(); GlobalProviders.init(); - await AppLocalizations.load(); - initializeTimeZones(); - await initializeInstallationData(); + await Future.wait([ + DeviceInfo.init(), + AppLocalizations.load(), + initializeInstallationData(), + fcmInit(), + notifyInit(), + updateInfoToServer(), + ]); - await fcmInit(); - await notifyInit(); initBackgroundService(); - await updateInfoToServer(); - runApp( I18n( initialLocale: GlobalProviders.ui.locale, diff --git a/lib/widgets/map/map.dart b/lib/widgets/map/map.dart index 2b393b535..d7c012ca8 100644 --- a/lib/widgets/map/map.dart +++ b/lib/widgets/map/map.dart @@ -249,7 +249,6 @@ class DpipMapState extends State { sourceId, GeojsonSourceProperties(data: GeoJsonBuilder().addFeature(location.toFeatureBuilder()).build()), ); - TalkerManager.instance.info('Added Source "$sourceId"'); } else { await controller.setGeoJsonSource(sourceId, GeoJsonBuilder().addFeature(location.toFeatureBuilder()).build()); TalkerManager.instance.info('Updated Source "$sourceId"'); @@ -267,7 +266,6 @@ class DpipMapState extends State { iconIgnorePlacement: true, ), ); - TalkerManager.instance.info('Added Layer "$layerId"'); } await controller.moveCamera(CameraUpdate.newLatLngZoom(location, 7)); @@ -301,7 +299,6 @@ class DpipMapState extends State { await spritePngFile.writeAsBytes(spritePngData.buffer.asUint8List()); final spritePngFile2x = File('$mapDir/sprites@2x.png'); await spritePngFile2x.writeAsBytes(spritePngData.buffer.asUint8List()); - TalkerManager.instance.info('Copied sprite.png to $spritePngFile'); // Copy sprite.json final spriteJsonData = await rootBundle.load('assets/sprites.json'); @@ -309,7 +306,6 @@ class DpipMapState extends State { await spriteJsonFile.writeAsBytes(spriteJsonData.buffer.asUint8List()); final spriteJsonFile2x = File('$mapDir/sprites@2x.json'); await spriteJsonFile2x.writeAsBytes(spriteJsonData.buffer.asUint8List()); - TalkerManager.instance.info('Copied sprite.json to $spriteJsonFile'); final spriteUri = '${spriteJsonFile.parent.uri}sprites'; TalkerManager.instance.info('Sprite is $spriteUri');