Loading...
Searching...
No Matches
NavigineSdkExample.java
Go to the documentation of this file.
1package com.navigine.examples;
2
3import com.navigine.idl.java.*;
4
9public class NavigineSdkExample {
10
11 private NavigineSdk sdk;
12 private LocationManager locationManager;
13 private NavigationManager navigationManager;
14 private ZoneManager zoneManager;
15 private RouteManager routeManager;
16 private AsyncRouteManager asyncRouteManager;
17 private NotificationManager notificationManager;
18 private MeasurementManager measurementManager;
19 private LocationListManager locationListManager;
20 private StorageManager storageManager;
21 private MqttSession mqttSession;
22
24 initializeSdk();
25 }
26
30 private void initializeSdk() {
31 try {
32 // [java_NavigineSdk_getInstance]
33 // Get SDK instance
35 // [java_NavigineSdk_getInstance]
36
37 // [java_NavigineSdk_getVersion]
38 // Get SDK version
39 System.out.println("Navigine SDK Version: " + NavigineSdk.getVersion());
40 // [java_NavigineSdk_getVersion]
41
42 // [java_NavigineSdk_getDeviceId]
43 // Get device ID
44 System.out.println("Device ID: " + NavigineSdk.getDeviceId());
45 // [java_NavigineSdk_getDeviceId]
46
47 // [java_NavigineSdk_getRelativeTime]
48 // Get relative time
49 System.out.println("Relative Time: " + NavigineSdk.getRelativeTime());
50 // [java_NavigineSdk_getRelativeTime]
51
52 // [java_NavigineSdk_setUserHash]
53 // Set user hash (authorization token)
54 sdk.setUserHash("XXXX-XXXX-XXXX-XXXX");
55 // [java_NavigineSdk_setUserHash]
56
57 // [java_NavigineSdk_setServer]
58 // Set server URL (optional)
59 sdk.setServer("https://custom.navigine.com");
60 // [java_NavigineSdk_setServer]
61
62 // Initialize managers
63 initializeManagers();
64
65 } catch (Exception e) {
66 System.err.println("SDK initialization error: " + e.getMessage());
67 }
68 }
69
73 private void initializeManagers() {
74 // [java_NavigineSdk_getLocationManager]
75 // Get LocationManager for working with locations
76 locationManager = sdk.getLocationManager();
77 if (locationManager != null) {
78 System.out.println("LocationManager successfully initialized");
79 }
80 // [java_NavigineSdk_getLocationManager]
81
82 // [java_NavigineSdk_getNavigationManager]
83 // Get NavigationManager for navigation
84 if (locationManager != null) {
85 navigationManager = sdk.getNavigationManager(locationManager);
86 if (navigationManager != null) {
87 System.out.println("NavigationManager successfully initialized");
88 }
89 }
90 // [java_NavigineSdk_getNavigationManager]
91
92 // [java_NavigineSdk_getZoneManager]
93 // Get ZoneManager for working with zones
94 if (navigationManager != null) {
95 zoneManager = sdk.getZoneManager(navigationManager);
96 if (zoneManager != null) {
97 System.out.println("ZoneManager successfully initialized");
98 }
99 }
100 // [java_NavigineSdk_getZoneManager]
101
102 // [java_NavigineSdk_getRouteManager]
103 // Get RouteManager for building routes
104 if (locationManager != null && navigationManager != null) {
105 routeManager = sdk.getRouteManager(locationManager, navigationManager);
106 if (routeManager != null) {
107 System.out.println("RouteManager successfully initialized");
108 }
109 }
110 // [java_NavigineSdk_getRouteManager]
111
112 // [java_NavigineSdk_getAsyncRouteManager]
113 // Get AsyncRouteManager for async route operations
114 if (locationManager != null && navigationManager != null) {
115 asyncRouteManager = sdk.getAsyncRouteManager(locationManager, navigationManager);
116 if (asyncRouteManager != null) {
117 System.out.println("AsyncRouteManager successfully initialized");
118 }
119 }
120 // [java_NavigineSdk_getAsyncRouteManager]
121
122 // [java_NavigineSdk_getNotificationManager]
123 // Get NotificationManager for notifications
124 if (locationManager != null) {
125 notificationManager = sdk.getNotificationManager(locationManager);
126 if (notificationManager != null) {
127 System.out.println("NotificationManager successfully initialized");
128 }
129 }
130 // [java_NavigineSdk_getNotificationManager]
131
132 // [java_NavigineSdk_getMeasurementManager]
133 // Get MeasurementManager for measurements
134 if (locationManager != null) {
135 measurementManager = sdk.getMeasurementManager(locationManager);
136 if (measurementManager != null) {
137 System.out.println("MeasurementManager successfully initialized");
138 }
139 }
140 // [java_NavigineSdk_getMeasurementManager]
141
142 // [java_NavigineSdk_getLocationListManager]
143 // Get LocationListManager for location list operations
144 locationListManager = sdk.getLocationListManager();
145 if (locationListManager != null) {
146 System.out.println("LocationListManager successfully initialized");
147 }
148 // [java_NavigineSdk_getLocationListManager]
149
150 // [java_NavigineSdk_getStorageManager]
151 // Get StorageManager for working with storages
152 storageManager = sdk.getStorageManager();
153 if (storageManager != null) {
154 System.out.println("StorageManager successfully initialized");
155 }
156 // [java_NavigineSdk_getStorageManager]
157
158 // [java_NavigineSdk_getMqttSession]
159 // Get MqttSession for publishing position data via MQTT
160 if (navigationManager != null) {
161 mqttSession = sdk.getMqttSession(navigationManager);
162 if (mqttSession != null) {
163 System.out.println("MqttSession successfully initialized");
164 }
165 }
166 // [java_NavigineSdk_getMqttSession]
167 }
168
172 public void printSdkInfo() {
173 System.out.println("=== Navigine SDK Information ===");
174 System.out.println("SDK Version: " + NavigineSdk.getVersion());
175 System.out.println("Device ID: " + NavigineSdk.getDeviceId());
176 System.out.println("Relative Time: " + NavigineSdk.getRelativeTime());
177 System.out.println("LocationManager: " + (locationManager != null ? "available" : "unavailable"));
178 System.out.println("NavigationManager: " + (navigationManager != null ? "available" : "unavailable"));
179 System.out.println("ZoneManager: " + (zoneManager != null ? "available" : "unavailable"));
180 System.out.println("RouteManager: " + (routeManager != null ? "available" : "unavailable"));
181 System.out.println("AsyncRouteManager: " + (asyncRouteManager != null ? "available" : "unavailable"));
182 System.out.println("NotificationManager: " + (notificationManager != null ? "available" : "unavailable"));
183 System.out.println("MeasurementManager: " + (measurementManager != null ? "available" : "unavailable"));
184 System.out.println("LocationListManager: " + (locationListManager != null ? "available" : "unavailable"));
185 System.out.println("StorageManager: " + (storageManager != null ? "available" : "unavailable"));
186 System.out.println("MqttSession: " + (mqttSession != null ? "available" : "unavailable"));
187 }
188
193 System.out.println("=== Manager Usage Demonstration ===");
194
195 // LocationManager usage example
196 if (locationManager != null) {
197 System.out.println("LocationManager ready for location operations");
198 // Add code here for loading locations, working with them, etc.
199 }
200
201 // NavigationManager usage example
202 if (navigationManager != null) {
203 System.out.println("NavigationManager ready for positioning");
204 // Add code here for getting position, setting up listeners, etc.
205 }
206
207 // ZoneManager usage example
208 if (zoneManager != null) {
209 System.out.println("ZoneManager ready for zone operations");
210 // Add code here for setting up zones, handling enter/exit events, etc.
211 }
212
213 // RouteManager usage example
214 if (routeManager != null) {
215 System.out.println("RouteManager ready for route building");
216 // Add code here for building routes, setting destination points, etc.
217 }
218
219 // AsyncRouteManager usage example
220 if (asyncRouteManager != null) {
221 System.out.println("AsyncRouteManager ready for async route operations");
222 // Add code here for creating routing sessions, etc.
223 }
224
225 // NotificationManager usage example
226 if (notificationManager != null) {
227 System.out.println("NotificationManager ready for notifications");
228 // Add code here for setting up beacon notifications, etc.
229 }
230
231 // MeasurementManager usage example
232 if (measurementManager != null) {
233 System.out.println("MeasurementManager ready for measurements");
234 // Add code here for managing measurement generators, etc.
235 }
236
237 // LocationListManager usage example
238 if (locationListManager != null) {
239 System.out.println("LocationListManager ready for location list operations");
240 // Add code here for getting available locations list, etc.
241 }
242
243 // StorageManager usage example
244 if (storageManager != null) {
245 System.out.println("StorageManager ready for storage operations");
246 // Add code here for creating storages, managing data, etc.
247 }
248
249 // MqttSession usage example
250 if (mqttSession != null) {
251 System.out.println("MqttSession ready for publishing position data via MQTT");
252 // Add code here for connecting to MQTT broker, publishing positions, etc.
253 }
254 }
255
259 public static void main(String[] args) {
261 example.printSdkInfo();
262 example.demonstrateManagersUsage();
263 }
264}