diff --git a/lib/constants/app_constants.dart b/lib/constants/app_constants.dart index 5866349..db0e3a4 100644 --- a/lib/constants/app_constants.dart +++ b/lib/constants/app_constants.dart @@ -106,7 +106,7 @@ class AppConstants { static String testIP = '12.4.5.1'; // projectID.QlineType.ScreenType.AnyNumber (1 to 10) static int thresholdForListUI = 3; - static double currentBuildVersion = 8.3; + static double currentBuildVersion = 8.4; static double clearLogsHoursThreshold = 48; } @@ -273,7 +273,7 @@ class MockJsonRepo { "isQueue": true, "isToneReq": true, "isVoiceReq": true, - "orientationType": 1, + "orientationType ": 1, "isTurnOn": true, "concurrentCallDelaySec": 3, "crTypeAckIP": "192.168.1.100", diff --git a/lib/main.dart b/lib/main.dart index 0b99299..10ee392 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -12,7 +12,6 @@ import 'package:wakelock_plus/wakelock_plus.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); await AppDependencies.addDependencies(); - // Keep the screen on await WakelockPlus.enable(); // The following foreground task logic is now handled natively in Android. Commented out for clarity. diff --git a/lib/services/logger_service.dart b/lib/services/logger_service.dart index a320dc8..75c1abc 100644 --- a/lib/services/logger_service.dart +++ b/lib/services/logger_service.dart @@ -29,22 +29,28 @@ class LoggerServiceImp implements LoggerService { final timestamp = DateFormat('yyyy-MM-dd hh:mm:ss a').format(DateTime.now()); final formattedMessage = "[$timestamp] [SOURCE: $source] ${type.name.toUpperCase()}: $message"; - final dir = await getApplicationDocumentsDirectory(); - final logDir = Directory('${dir.path}/logs'); + final baseDir = await getExternalStorageDirectory(); + final logDir = Directory('${baseDir!.path}/logs'); if (!await logDir.exists()) { await logDir.create(recursive: true); } - final logFileName = type == LogTypeEnum.error ? AppStrings.errorLogsFileName : AppStrings.dataLogsFileName; + final logFileName = type == LogTypeEnum.error + ? AppStrings.errorLogsFileName + : AppStrings.dataLogsFileName; + final file = File('${logDir.path}/$logFileName'); ScreenConfigViewModel screenConfigViewModel = getIt.get(); CacheService cacheService = getIt.get(); + final lastLogsClearedAt = screenConfigViewModel.lastTimeLogsCleared; final now = DateTime.now(); - if (lastLogsClearedAt != null && now.difference(lastLogsClearedAt).inHours >= AppConstants.clearLogsHoursThreshold) { + + if (lastLogsClearedAt != null && + now.difference(lastLogsClearedAt).inHours >= AppConstants.clearLogsHoursThreshold) { await file.writeAsString(''); - getIt.get().lastTimeLogsCleared = now; + screenConfigViewModel.lastTimeLogsCleared = now; cacheService.setLastTimeLogsCleared(lastTimeCleared: now.millisecondsSinceEpoch); } await file.writeAsString("$formattedMessage\n", mode: FileMode.append); diff --git a/lib/views/common_widgets/app_footer.dart b/lib/views/common_widgets/app_footer.dart index 5b436a2..2db283d 100644 --- a/lib/views/common_widgets/app_footer.dart +++ b/lib/views/common_widgets/app_footer.dart @@ -37,43 +37,43 @@ class AppFooter extends StatelessWidget { fontWeight: FontWeight.w500, fontSize: SizeConfig.getWidthMultiplier() * 1.5, )), - Row( - children: [ - InkWell( - onTap: () { - screenConfigVM.updateCurrentScreenRotation(ScreenOrientationEnum.portraitUp); - }, - child: Icon( - Icons.arrow_upward, - size: SizeConfig.getWidthMultiplier() * 2, - ), - ), - InkWell( - onTap: () { - screenConfigVM.updateCurrentScreenRotation(ScreenOrientationEnum.landscapeRight); - }, - child: Icon(Icons.arrow_forward, size: SizeConfig.getWidthMultiplier() * 2), - ), - InkWell( - onTap: () { - screenConfigVM.updateCurrentScreenRotation(ScreenOrientationEnum.portraitDown); - }, - child: Icon( - Icons.arrow_downward, - size: SizeConfig.getWidthMultiplier() * 2, - ), - ), - InkWell( - onTap: () { - screenConfigVM.updateCurrentScreenRotation(ScreenOrientationEnum.landscapeLeft); - }, - child: Icon( - Icons.arrow_back, - size: SizeConfig.getWidthMultiplier() * 2, - ), - ), - ], - ), + // Row( + // children: [ + // InkWell( + // onTap: () { + // screenConfigVM.updateCurrentScreenRotation(ScreenOrientationEnum.portraitUp); + // }, + // child: Icon( + // Icons.arrow_upward, + // size: SizeConfig.getWidthMultiplier() * 2, + // ), + // ), + // InkWell( + // onTap: () { + // screenConfigVM.updateCurrentScreenRotation(ScreenOrientationEnum.landscapeRight); + // }, + // child: Icon(Icons.arrow_forward, size: SizeConfig.getWidthMultiplier() * 2), + // ), + // InkWell( + // onTap: () { + // screenConfigVM.updateCurrentScreenRotation(ScreenOrientationEnum.portraitDown); + // }, + // child: Icon( + // Icons.arrow_downward, + // size: SizeConfig.getWidthMultiplier() * 2, + // ), + // ), + // InkWell( + // onTap: () { + // screenConfigVM.updateCurrentScreenRotation(ScreenOrientationEnum.landscapeLeft); + // }, + // child: Icon( + // Icons.arrow_back, + // size: SizeConfig.getWidthMultiplier() * 2, + // ), + // ), + // ], + // ), ], ), const SizedBox(width: 10), diff --git a/pubspec.lock b/pubspec.lock index dfa3b51..7348769 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -5,10 +5,10 @@ packages: dependency: transitive description: name: args - sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 + sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 url: "https://pub.dev" source: hosted - version: "2.6.0" + version: "2.7.0" async: dependency: transitive description: @@ -21,10 +21,10 @@ packages: dependency: transitive description: name: audio_session - sha256: b2a26ba8b7efa1790d6460e82971fde3e398cfbe2295df9dea22f3499d2c12a7 + sha256: "2b7fff16a552486d078bfc09a8cde19f426dc6d6329262b684182597bec5b1ac" url: "https://pub.dev" source: hosted - version: "0.1.23" + version: "0.1.25" blinking_text: dependency: "direct main" description: @@ -69,10 +69,10 @@ packages: dependency: "direct main" description: name: connectivity_plus - sha256: e0817759ec6d2d8e57eb234e6e57d2173931367a865850c7acea40d4b4f9c27d + sha256: "051849e2bd7c7b3bc5844ea0d096609ddc3a859890ec3a9ac4a65a2620cc1f99" url: "https://pub.dev" source: hosted - version: "6.1.1" + version: "6.1.4" connectivity_plus_platform_interface: dependency: transitive description: @@ -178,10 +178,10 @@ packages: dependency: "direct main" description: name: flutter_svg - sha256: "54900a1a1243f3c4a5506d853a2b5c2dbc38d5f27e52a52618a8054401431123" + sha256: d44bf546b13025ec7353091516f6881f1d4c633993cb109c3916c3a0159dadf1 url: "https://pub.dev" source: hosted - version: "2.0.16" + version: "2.1.0" flutter_test: dependency: "direct dev" description: flutter @@ -191,10 +191,10 @@ packages: dependency: "direct main" description: name: flutter_tts - sha256: cbec5f0447223e1b4c47f893c7f8ef663ac582120c147e4a1e2cade7f2e8b0c8 + sha256: bdf2fc4483e74450dc9fc6fe6a9b6a5663e108d4d0dad3324a22c8e26bf48af4 url: "https://pub.dev" source: hosted - version: "4.2.0" + version: "4.2.3" flutter_web_plugins: dependency: transitive description: flutter @@ -212,18 +212,18 @@ packages: dependency: "direct main" description: name: get_it - sha256: f126a3e286b7f5b578bf436d5592968706c4c1de28a228b870ce375d9f743103 + sha256: a4292e7cf67193f8e7c1258203104eb2a51ec8b3a04baa14695f4064c144297b url: "https://pub.dev" source: hosted - version: "8.0.3" + version: "8.2.0" http: dependency: "direct overridden" description: name: http - sha256: b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010 + sha256: bb2ce4590bc2667c96f318d68cac1b5a7987ec819351d32b1c987239a815e007 url: "https://pub.dev" source: hosted - version: "1.2.2" + version: "1.5.0" http_parser: dependency: transitive description: @@ -244,26 +244,26 @@ packages: dependency: "direct main" description: name: just_audio - sha256: a49e7120b95600bd357f37a2bb04cd1e88252f7cdea8f3368803779b925b1049 + sha256: f978d5b4ccea08f267dae0232ec5405c1b05d3f3cd63f82097ea46c015d5c09e url: "https://pub.dev" source: hosted - version: "0.9.42" + version: "0.9.46" just_audio_platform_interface: dependency: transitive description: name: just_audio_platform_interface - sha256: "0243828cce503c8366cc2090cefb2b3c871aa8ed2f520670d76fd47aa1ab2790" + sha256: "4cd94536af0219fa306205a58e78d67e02b0555283c1c094ee41e402a14a5c4a" url: "https://pub.dev" source: hosted - version: "4.3.0" + version: "4.5.0" just_audio_web: dependency: transitive description: name: just_audio_web - sha256: "9a98035b8b24b40749507687520ec5ab404e291d2b0937823ff45d92cb18d448" + sha256: "6ba8a2a7e87d57d32f0f7b42856ade3d6a9fbe0f1a11fabae0a4f00bb73f0663" url: "https://pub.dev" source: hosted - version: "0.4.13" + version: "0.4.16" leak_tracker: dependency: transitive description: @@ -300,10 +300,10 @@ packages: dependency: "direct main" description: name: logger - sha256: be4b23575aac7ebf01f225a241eb7f6b5641eeaf43c6a8613510fc2f8cf187d1 + sha256: "2621da01aabaf223f8f961e751f2c943dbb374dc3559b982f200ccedadaa6999" url: "https://pub.dev" source: hosted - version: "2.5.0" + version: "2.6.0" logging: dependency: transitive description: @@ -364,18 +364,18 @@ packages: dependency: transitive description: name: package_info_plus - sha256: "70c421fe9d9cc1a9a7f3b05ae56befd469fe4f8daa3b484823141a55442d858d" + sha256: "7976bfe4c583170d6cdc7077e3237560b364149fcd268b5f53d95a991963b191" url: "https://pub.dev" source: hosted - version: "8.1.2" + version: "8.3.0" package_info_plus_platform_interface: dependency: transitive description: name: package_info_plus_platform_interface - sha256: a5ef9986efc7bf772f2696183a3992615baa76c1ffb1189318dd8803778fb05b + sha256: "6c935fb612dff8e3cc9632c2b301720c77450a126114126ffaafe28d2e87956c" url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "3.2.0" path: dependency: transitive description: @@ -468,10 +468,10 @@ packages: dependency: "direct main" description: name: provider - sha256: c8a055ee5ce3fd98d6fc872478b03823ffdb448699c6ebdbbc71d59b596fd48c + sha256: "4abbd070a04e9ddc287673bf5a030c7ca8b685ff70218720abab8b092f53dd84" url: "https://pub.dev" source: hosted - version: "6.1.2" + version: "6.1.5" qr_code_scanner_plus: dependency: "direct main" description: @@ -508,10 +508,10 @@ packages: dependency: transitive description: name: shared_preferences_android - sha256: "02a7d8a9ef346c9af715811b01fbd8e27845ad2c41148eefd31321471b41863d" + sha256: "9f9f3d372d4304723e6136663bb291c0b93f5e4c8a4a6314347f481a33bda2b1" url: "https://pub.dev" source: hosted - version: "2.4.0" + version: "2.4.7" shared_preferences_foundation: dependency: transitive description: @@ -540,10 +540,10 @@ packages: dependency: transitive description: name: shared_preferences_web - sha256: d2ca4132d3946fec2184261726b355836a82c33d7d5b67af32692aff18a4684e + sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019 url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.4.3" shared_preferences_windows: dependency: transitive description: @@ -613,6 +613,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.3.0" + synchronized: + dependency: transitive + description: + name: synchronized + sha256: "69fe30f3a8b04a0be0c15ae6490fc859a78ef4c43ae2dd5e8a623d45bfcf9225" + url: "https://pub.dev" + source: hosted + version: "3.3.0+3" term_glyph: dependency: transitive description: @@ -657,18 +665,18 @@ packages: dependency: transitive description: name: vector_graphics - sha256: "27d5fefe86fb9aace4a9f8375b56b3c292b64d8c04510df230f849850d912cb7" + sha256: "44cc7104ff32563122a929e4620cf3efd584194eec6d1d913eb5ba593dbcf6de" url: "https://pub.dev" source: hosted - version: "1.1.15" + version: "1.1.18" vector_graphics_codec: dependency: transitive description: name: vector_graphics_codec - sha256: "2430b973a4ca3c4dbc9999b62b8c719a160100dcbae5c819bae0cacce32c9cdb" + sha256: "99fd9fbd34d9f9a32efd7b6a6aae14125d8237b10403b422a6a6dfeac2806146" url: "https://pub.dev" source: hosted - version: "1.1.12" + version: "1.1.13" vector_graphics_compiler: dependency: transitive description: @@ -729,10 +737,10 @@ packages: dependency: transitive description: name: win32 - sha256: "8b338d4486ab3fbc0ba0db9f9b4f5239b6697fcee427939a40e720cbb9ee0a69" + sha256: daf97c9d80197ed7b619040e86c8ab9a9dad285e7671ee7390f9180cc828a51e url: "https://pub.dev" source: hosted - version: "5.9.0" + version: "5.10.1" xdg_directories: dependency: transitive description: