37 private void initializeSdk() {
71 System.out.println(
"SDK reset to initial state");
76 sdk.
setServer(
"https://custom.navigine.com");
82 }
catch (Exception e) {
83 System.err.println(
"SDK initialization error: " + e.getMessage());
90 private void initializeManagers() {
94 if (locationManager !=
null) {
95 System.out.println(
"LocationManager successfully initialized");
101 if (locationManager !=
null) {
102 navigationManager = sdk.getNavigationManager(locationManager);
103 if (navigationManager !=
null) {
104 System.out.println(
"NavigationManager successfully initialized");
111 if (navigationManager !=
null) {
112 zoneManager = sdk.getZoneManager(navigationManager);
113 if (zoneManager !=
null) {
114 System.out.println(
"ZoneManager successfully initialized");
121 if (locationManager !=
null && navigationManager !=
null) {
122 routeManager = sdk.getRouteManager(locationManager, navigationManager);
123 if (routeManager !=
null) {
124 System.out.println(
"RouteManager successfully initialized");
131 if (locationManager !=
null && navigationManager !=
null) {
132 asyncRouteManager = sdk.getAsyncRouteManager(locationManager, navigationManager);
133 if (asyncRouteManager !=
null) {
134 System.out.println(
"AsyncRouteManager successfully initialized");
141 if (locationManager !=
null) {
142 notificationManager = sdk.getNotificationManager(locationManager);
143 if (notificationManager !=
null) {
144 System.out.println(
"NotificationManager successfully initialized");
151 if (locationManager !=
null) {
152 measurementManager = sdk.getMeasurementManager(locationManager);
153 if (measurementManager !=
null) {
154 System.out.println(
"MeasurementManager successfully initialized");
161 locationListManager = sdk.getLocationListManager();
162 if (locationListManager !=
null) {
163 System.out.println(
"LocationListManager successfully initialized");
169 storageManager = sdk.getStorageManager();
170 if (storageManager !=
null) {
171 System.out.println(
"StorageManager successfully initialized");
177 if (locationWindow !=
null) {
178 routeLayer = sdk.getRouteLayer(locationWindow);
179 if (routeLayer !=
null) {
180 System.out.println(
"RouteLayer successfully initialized");
186 if (locationWindow !=
null && routeLayer !=
null) {
187 guidanceCamera = sdk.getGuidanceCamera(locationWindow, routeLayer);
189 guidanceCamera.setMode(GuidanceCameraMode.FOLLOWING);
192 guidanceCamera.set2DMode(
false);
195 System.out.println(
"Guidance mode: " + guidanceCamera.mode());
198 RouteInstruction next = guidanceCamera.instruction();
200 System.out.println(
"Next instruction: " + next.getTitle() +
" " + next.getDistance() +
" m");
204 guidanceCamera.addListener(
new GuidanceListener() {
206 public void onCameraModeChanged(GuidanceCameraMode mode) {
207 System.out.println(
"Guidance camera mode: " + mode);
211 public void onInstructionChanged(RouteInstruction instruction) {
212 System.out.println(
"Next: " + (instruction ==
null ?
"none" : instruction.getTitle()));
220 if (locationWindow !=
null) {
221 RouteSimulator routeSimulator = sdk.getRouteSimulator(locationWindow);
223 List<GlobalPoint> walkPoints =
new ArrayList<>();
224 walkPoints.add(
new GlobalPoint(55.751, 37.618));
225 walkPoints.add(
new GlobalPoint(55.752, 37.618));
226 routeSimulator.
setGeometry(Collections.singletonList(
new LocationPolyline(walkPoints,
null)));
232 boolean started = routeSimulator.
start();
233 System.out.println(
"Route walk started: " + started);
236 RouteSimulatorSample sample = routeSimulator.
sample();
237 if (sample !=
null) {
238 System.out.println(
"Walk advance: " + sample.getAdvance() +
" m");
246 if (navigationManager !=
null) {
247 mqttSession = sdk.getMqttSession(navigationManager);
248 if (mqttSession !=
null) {
249 System.out.println(
"MqttSession successfully initialized");
259 System.out.println(
"=== Navigine SDK Information ===");
263 System.out.println(
"LocationManager: " + (locationManager !=
null ?
"available" :
"unavailable"));
264 System.out.println(
"NavigationManager: " + (navigationManager !=
null ?
"available" :
"unavailable"));
265 System.out.println(
"ZoneManager: " + (zoneManager !=
null ?
"available" :
"unavailable"));
266 System.out.println(
"RouteManager: " + (routeManager !=
null ?
"available" :
"unavailable"));
267 System.out.println(
"AsyncRouteManager: " + (asyncRouteManager !=
null ?
"available" :
"unavailable"));
268 System.out.println(
"NotificationManager: " + (notificationManager !=
null ?
"available" :
"unavailable"));
269 System.out.println(
"MeasurementManager: " + (measurementManager !=
null ?
"available" :
"unavailable"));
270 System.out.println(
"LocationListManager: " + (locationListManager !=
null ?
"available" :
"unavailable"));
271 System.out.println(
"StorageManager: " + (storageManager !=
null ?
"available" :
"unavailable"));
272 System.out.println(
"MqttSession: " + (mqttSession !=
null ?
"available" :
"unavailable"));
279 System.out.println(
"=== Manager Usage Demonstration ===");
282 if (locationManager !=
null) {
283 System.out.println(
"LocationManager ready for location operations");
288 if (navigationManager !=
null) {
289 System.out.println(
"NavigationManager ready for positioning");
294 if (zoneManager !=
null) {
295 System.out.println(
"ZoneManager ready for zone operations");
300 if (routeManager !=
null) {
301 System.out.println(
"RouteManager ready for route building");
306 if (asyncRouteManager !=
null) {
307 System.out.println(
"AsyncRouteManager ready for async route operations");
312 if (notificationManager !=
null) {
313 System.out.println(
"NotificationManager ready for notifications");
318 if (measurementManager !=
null) {
319 System.out.println(
"MeasurementManager ready for measurements");
324 if (locationListManager !=
null) {
325 System.out.println(
"LocationListManager ready for location list operations");
330 if (storageManager !=
null) {
331 System.out.println(
"StorageManager ready for storage operations");
336 if (mqttSession !=
null) {
337 System.out.println(
"MqttSession ready for publishing position data via MQTT");
345 public static void main(String[] args) {