diff options
| author | Aldrik Ramaekers <aldrik@amftech.nl> | 2022-11-03 10:59:37 +0100 |
|---|---|---|
| committer | Aldrik Ramaekers <aldrik@amftech.nl> | 2022-11-03 11:06:18 +0100 |
| commit | d14e215396f7aee61fb8d7963736063ee859b928 (patch) | |
| tree | 6b21387fe0e5765a4d74e791b62a7d9eeb64b761 /lib/main.dart | |
| parent | ec7c6e4f7ebd4e096722c7cfd1e651867207ec07 (diff) | |
werken aan navigatie
Diffstat (limited to 'lib/main.dart')
| -rw-r--r-- | lib/main.dart | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/lib/main.dart b/lib/main.dart index d0ff0d8..8f58ca3 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,8 +1,12 @@ import 'dart:async'; +import 'dart:io'; import 'package:event_bus/event_bus.dart'; +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_local_notifications/flutter_local_notifications.dart'; import 'package:training_planner/services/ishift_provider_service.dart'; +import 'package:training_planner/services/log_service.dart'; import 'package:training_planner/services/messaging_service.dart'; import 'package:training_planner/services/mock_shift_provider_service.dart'; import 'package:training_planner/services/local_shift_provider_service.dart'; @@ -10,8 +14,15 @@ import 'package:training_planner/services/settings_service.dart'; import 'package:training_planner/style/style.dart'; import 'pages/home_page.dart'; import 'package:local_auth/local_auth.dart'; +import 'package:here_sdk/core.dart'; +import 'package:here_sdk/core.engine.dart'; +import 'package:here_sdk/core.errors.dart'; +import 'package:here_sdk/mapview.dart'; void main() { + _initializeHERESDK(); + WidgetsFlutterBinding.ensureInitialized(); + configureNotifications(); runZonedGuarded(() { runApp(const MyApp()); }, (error, stack) { @@ -19,13 +30,48 @@ void main() { }); } +void _initializeHERESDK() async { + // Needs to be called before accessing SDKOptions to load necessary libraries. + SdkContext.init(IsolateOrigin.main); + + // Set your credentials for the HERE SDK. + String accessKeyId = "7AOr--BqzFzBELeBUXypqQ"; + String accessKeySecret = + "27yrhnsn-in-FVLWie-DKmS44XWsyIVIhgkhbdZB5glP9vyY3dIuZDBq23LvH-UwslyRCHt7vkgJtwADxxq-AQ"; + SDKOptions sdkOptions = + SDKOptions.withAccessKeySecret(accessKeyId, accessKeySecret); + + try { + await SDKNativeEngine.makeSharedInstance(sdkOptions); + } on InstantiationException { + throw Exception("Failed to initialize the HERE SDK."); + } +} + final IProgramProviderService shiftProvider = LocalShiftProviderService(); final LocalAuthentication auth = LocalAuthentication(); final MessagingService messageService = MessagingService(); final SettingsService settingsService = SettingsService(); +final FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin = + FlutterLocalNotificationsPlugin(); EventBus eventBus = EventBus(); +void configureNotifications() async { + const AndroidInitializationSettings initializationSettingsAndroid = + AndroidInitializationSettings('dhl'); + + final InitializationSettings initializationSettings = InitializationSettings( + android: initializationSettingsAndroid, + ); + await flutterLocalNotificationsPlugin.initialize(initializationSettings, + onSelectNotification: (String? payload) async { + if (payload != null) { + LogService.log('notification payload: $payload'); + } + }); +} + class MyApp extends StatelessWidget { const MyApp({Key? key}) : super(key: key); |
