summaryrefslogtreecommitdiff
path: root/lib/main.dart
diff options
context:
space:
mode:
authorAldrik Ramaekers <aldrik@amftech.nl>2022-11-03 10:59:37 +0100
committerAldrik Ramaekers <aldrik@amftech.nl>2022-11-03 11:06:18 +0100
commitd14e215396f7aee61fb8d7963736063ee859b928 (patch)
tree6b21387fe0e5765a4d74e791b62a7d9eeb64b761 /lib/main.dart
parentec7c6e4f7ebd4e096722c7cfd1e651867207ec07 (diff)
werken aan navigatie
Diffstat (limited to 'lib/main.dart')
-rw-r--r--lib/main.dart46
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);