… | |
… | |
18 | */
|
18 | */
|
19 |
|
19 |
|
20 | package com.zoffcc.applications.zanavi;
|
20 | package com.zoffcc.applications.zanavi;
|
21 |
|
21 |
|
22 | import java.io.BufferedReader;
|
22 | import java.io.BufferedReader;
|
|
|
23 | import java.io.File;
|
23 | import java.io.FileReader;
|
24 | import java.io.FileReader;
|
24 | import java.text.SimpleDateFormat;
|
25 | import java.text.SimpleDateFormat;
|
25 | import java.util.Date;
|
26 | import java.util.Date;
|
26 | import java.util.Locale;
|
27 | import java.util.Locale;
|
27 |
|
28 |
|
… | |
… | |
35 | public class ZANaviDebugReceiver extends BroadcastReceiver
|
36 | public class ZANaviDebugReceiver extends BroadcastReceiver
|
36 | {
|
37 | {
|
37 |
|
38 |
|
38 | static boolean stop_me = false;
|
39 | static boolean stop_me = false;
|
39 | static boolean dont_save_loc = false;
|
40 | static boolean dont_save_loc = false;
|
|
|
41 |
|
|
|
42 | private static int skip_count = 0;
|
|
|
43 | private static int rewind_count = 0;
|
|
|
44 | final private static int skip = 30;
|
|
|
45 | static boolean is_replaying = false;
|
|
|
46 | static boolean flag_route_ready = false;
|
|
|
47 | static String file_name_global = "";
|
40 |
|
48 |
|
41 | /*
|
49 | /*
|
42 | *
|
50 | *
|
43 | * Examples:
|
51 | * Examples:
|
44 | *
|
52 | *
|
… | |
… | |
82 | b.putInt("Callback", 3);
|
90 | b.putInt("Callback", 3);
|
83 | b.putString("lat", String.valueOf(lat));
|
91 | b.putString("lat", String.valueOf(lat));
|
84 | b.putString("lon", String.valueOf(lon));
|
92 | b.putString("lon", String.valueOf(lon));
|
85 | b.putString("q", "DEST 001");
|
93 | b.putString("q", "DEST 001");
|
86 | msg.setData(b);
|
94 | msg.setData(b);
|
87 | Navit.N_NavitGraphics.callback_handler.sendMessage(msg);
|
95 | NavitGraphics.callback_handler.sendMessage(msg);
|
88 | }
|
96 | }
|
89 | else
|
97 | else
|
90 | {
|
98 | {
|
91 | Message msg = new Message();
|
99 | Message msg = new Message();
|
92 | Bundle b = new Bundle();
|
100 | Bundle b = new Bundle();
|
93 | b.putInt("Callback", 48);
|
101 | b.putInt("Callback", 48);
|
94 | b.putString("lat", String.valueOf(lat));
|
102 | b.putString("lat", String.valueOf(lat));
|
95 | b.putString("lon", String.valueOf(lon));
|
103 | b.putString("lon", String.valueOf(lon));
|
96 | b.putString("q", "DEST");
|
104 | b.putString("q", "DEST");
|
97 | msg.setData(b);
|
105 | msg.setData(b);
|
98 | Navit.N_NavitGraphics.callback_handler.sendMessage(msg);
|
106 | NavitGraphics.callback_handler.sendMessage(msg);
|
99 | }
|
107 | }
|
100 |
|
108 |
|
101 | System.out.println("ZANaviDebugReceiver:" + String.format("%s %s (%s)", key, value.toString(), value.getClass().getName()));
|
109 | System.out.println("ZANaviDebugReceiver:" + String.format("%s %s (%s)", key, value.toString(), value.getClass().getName()));
|
102 | }
|
110 | }
|
103 |
|
111 |
|
104 | static void DR_set_position(String key, Bundle extras)
|
112 | static void DR_set_position(String key, Bundle extras, boolean disable_loc)
|
|
|
113 | {
|
|
|
114 | if (disable_loc)
|
105 | {
|
115 | {
|
106 | disable_normal_location();
|
116 | disable_normal_location();
|
|
|
117 | }
|
107 |
|
118 |
|
108 | Object value = extras.get(key);
|
119 | Object value = extras.get(key);
|
109 | String value2 = value.toString().replaceAll("\\s+", "").replaceAll("\"", "");
|
120 | String value2 = value.toString().replaceAll("\\s+", "").replaceAll("\"", "");
|
110 | float lat = Float.parseFloat(value2.split(",", 4)[0]);
|
121 | float lat = Float.parseFloat(value2.split(",", 4)[0]);
|
111 | float lon = Float.parseFloat(value2.split(",", 4)[1]);
|
122 | float lon = Float.parseFloat(value2.split(",", 4)[1]);
|
… | |
… | |
157 | b.putInt("Callback", 96);
|
168 | b.putInt("Callback", 96);
|
158 | String date = new SimpleDateFormat("yyyy-MM-dd_HHmmss", Locale.GERMAN).format(new Date());
|
169 | String date = new SimpleDateFormat("yyyy-MM-dd_HHmmss", Locale.GERMAN).format(new Date());
|
159 | String filename = Navit.NAVIT_DATA_DEBUG_DIR + "/zanavi_route_" + date + ".gpx";
|
170 | String filename = Navit.NAVIT_DATA_DEBUG_DIR + "/zanavi_route_" + date + ".gpx";
|
160 | b.putString("s", filename);
|
171 | b.putString("s", filename);
|
161 | msg.setData(b);
|
172 | msg.setData(b);
|
162 | Navit.N_NavitGraphics.callback_handler.sendMessage(msg);
|
173 | NavitGraphics.callback_handler.sendMessage(msg);
|
163 | System.out.println("ZANaviDebugReceiver:" + "file=" + filename);
|
174 | System.out.println("ZANaviDebugReceiver:" + "file=" + filename);
|
164 | }
|
175 | }
|
165 |
|
176 |
|
166 | static void DR_clear_route()
|
177 | static void DR_clear_route()
|
167 | {
|
178 | {
|
168 | // clear any previous destinations
|
179 | // clear any previous destinations
|
169 | Message msg2 = new Message();
|
180 | Message msg2 = new Message();
|
170 | Bundle b2 = new Bundle();
|
181 | Bundle b2 = new Bundle();
|
171 | b2.putInt("Callback", 7);
|
182 | b2.putInt("Callback", 7);
|
172 | msg2.setData(b2);
|
183 | msg2.setData(b2);
|
173 | Navit.N_NavitGraphics.callback_handler.sendMessage(msg2);
|
184 | NavitGraphics.callback_handler.sendMessage(msg2);
|
174 | System.out.println("ZANaviDebugReceiver:" + "clear route");
|
185 | System.out.println("ZANaviDebugReceiver:" + "clear route");
|
175 | }
|
186 | }
|
176 |
|
187 |
|
|
|
188 | static void DR_rewind_small()
|
|
|
189 | {
|
|
|
190 | rewind_count = 20;
|
|
|
191 | System.out.println("ZANaviDebugReceiver:" + "rewind_small");
|
|
|
192 | }
|
|
|
193 |
|
|
|
194 | static void DR_skip()
|
|
|
195 | {
|
|
|
196 | skip_count = 0;
|
|
|
197 | System.out.println("ZANaviDebugReceiver:" + "skip");
|
|
|
198 | }
|
|
|
199 |
|
177 | static void DR_replay_gps_file(String filename)
|
200 | static void DR_replay_yaml_file(String filename)
|
178 | {
|
201 | {
|
179 |
|
202 |
|
180 | System.out.println("ZANaviDebugReceiver:" + "Enter!!");
|
203 | file_name_global = filename;
|
181 |
|
|
|
182 | stop_me = false;
|
|
|
183 | dont_save_loc = true;
|
|
|
184 |
|
204 |
|
185 | try
|
205 | try
|
186 | {
|
206 | {
|
187 | if ((filename != null) && (!filename.equals("")))
|
207 | if ((filename != null) && (!filename.equals("")))
|
188 | {
|
208 | {
|
189 | BufferedReader br = null;
|
209 | BufferedReader br = null;
|
190 | br = new BufferedReader(new FileReader(filename));
|
210 | br = new BufferedReader(new FileReader(filename));
|
191 |
|
211 |
|
|
|
212 | is_replaying = true;
|
|
|
213 | NavitGraphics.NavitAOverlay_s.postInvalidate();
|
|
|
214 |
|
|
|
215 | disable_normal_location();
|
|
|
216 |
|
|
|
217 | String mode = "-";
|
|
|
218 | double lat_pos = 0.0;
|
|
|
219 | double lon_pos = 0.0;
|
|
|
220 | double lat_dst = 0.0;
|
|
|
221 | double lon_dst = 0.0;
|
|
|
222 |
|
|
|
223 | String line = "";
|
|
|
224 | while ((line = br.readLine()) != null)
|
|
|
225 | {
|
|
|
226 | if ((line.length() >= "from:".length()) && (line.equals("from:")))
|
|
|
227 | {
|
|
|
228 | mode = "from";
|
|
|
229 | }
|
|
|
230 | else if ((line.length() >= "to:".length()) && (line.equals("to:")))
|
|
|
231 | {
|
|
|
232 | mode = "to";
|
|
|
233 | }
|
|
|
234 | else if ((line.length() >= "success:".length()) && (line.equals("success:")))
|
|
|
235 | {
|
|
|
236 | mode = "success";
|
|
|
237 | }
|
|
|
238 | else if ((line.length() >= "capture:".length()) && (line.equals("capture:")))
|
|
|
239 | {
|
|
|
240 | mode = "capture";
|
|
|
241 | }
|
|
|
242 | else if ((line.length() > 2) && (!line.startsWith("#")))
|
|
|
243 | {
|
|
|
244 | // read lat,lon
|
|
|
245 | try
|
|
|
246 | {
|
|
|
247 | String name_str = line.split(":", 2)[0];
|
|
|
248 | String value_str = line.split(":", 2)[1];
|
|
|
249 | double lat = 0.0;
|
|
|
250 | double lon = 0.0;
|
|
|
251 |
|
|
|
252 | if (name_str.contains("lat"))
|
|
|
253 | {
|
|
|
254 | lat = Double.parseDouble(value_str);
|
|
|
255 | if (mode.equals("from"))
|
|
|
256 | {
|
|
|
257 | lat_pos = lat;
|
|
|
258 | }
|
|
|
259 | else if (mode.equals("to"))
|
|
|
260 | {
|
|
|
261 | lat_dst = lat;
|
|
|
262 | }
|
|
|
263 | }
|
|
|
264 | else if (name_str.contains("lng"))
|
|
|
265 | {
|
|
|
266 | lon = Double.parseDouble(value_str);
|
|
|
267 | if (mode.equals("from"))
|
|
|
268 | {
|
|
|
269 | lon_pos = lon;
|
|
|
270 | }
|
|
|
271 | else if (mode.equals("to"))
|
|
|
272 | {
|
|
|
273 | lon_dst = lon;
|
|
|
274 | }
|
|
|
275 | }
|
|
|
276 | }
|
|
|
277 | catch (Exception e2)
|
|
|
278 | {
|
|
|
279 | }
|
|
|
280 | }
|
|
|
281 | }
|
|
|
282 |
|
|
|
283 | DR_clear_route();
|
|
|
284 | Thread.sleep(200);
|
|
|
285 | Bundle extras = new Bundle();
|
|
|
286 |
|
|
|
287 | // System.out.println("ZANaviDebugReceiver:" + "set_position" + lat_pos + "," + lon_pos + "," + "0.0" + "," + "0");
|
|
|
288 |
|
|
|
289 | extras.putString("set_position", "" + lat_pos + "," + lon_pos + "," + "0.0" + "," + "0");
|
|
|
290 | DR_set_position("set_position", extras, true);
|
|
|
291 | Thread.sleep(1000);
|
|
|
292 | extras = new Bundle();
|
|
|
293 |
|
|
|
294 | // System.out.println("ZANaviDebugReceiver:" + "add_destination" + lat_dst + "," + lon_dst);
|
|
|
295 |
|
|
|
296 | extras.putString("add_destination", "" + lat_dst + "," + lon_dst);
|
|
|
297 | DR_add_destination("add_destination", extras);
|
|
|
298 |
|
|
|
299 | flag_route_ready = false;
|
|
|
300 |
|
|
|
301 | final Thread debug_zoom_to_route_001 = new Thread()
|
|
|
302 | {
|
|
|
303 | int wait = 1;
|
|
|
304 | int count = 0;
|
|
|
305 | int max_count = 240;
|
|
|
306 |
|
|
|
307 | @Override
|
|
|
308 | public void run()
|
|
|
309 | {
|
|
|
310 | while (wait == 1)
|
|
|
311 | {
|
|
|
312 | try
|
|
|
313 | {
|
|
|
314 | if ((NavitGraphics.navit_route_status == 17) || (NavitGraphics.navit_route_status == 33))
|
|
|
315 | {
|
|
|
316 | // zoom to route
|
|
|
317 | Message msg = new Message();
|
|
|
318 | Bundle b = new Bundle();
|
|
|
319 | b.putInt("Callback", 17);
|
|
|
320 | msg.setData(b);
|
|
|
321 | NavitGraphics.callback_handler.sendMessage(msg);
|
|
|
322 |
|
|
|
323 | Navit.set_map_position_to_screen_center();
|
|
|
324 |
|
|
|
325 | // save route to gpx file
|
|
|
326 | DR_save_route_to_gpx_file();
|
|
|
327 |
|
|
|
328 | wait = 0;
|
|
|
329 | }
|
|
|
330 | else
|
|
|
331 | {
|
|
|
332 | wait = 1;
|
|
|
333 | }
|
|
|
334 |
|
|
|
335 | count++;
|
|
|
336 | if (count > max_count)
|
|
|
337 | {
|
|
|
338 | wait = 0;
|
|
|
339 |
|
|
|
340 | Message msg7 = Navit.Navit_progress_h.obtainMessage();
|
|
|
341 | Bundle b7 = new Bundle();
|
|
|
342 | msg7.what = 2; // long Toast message
|
|
|
343 | b7.putString("text", Navit.get_text("saving route to GPX-file failed")); //TRANS
|
|
|
344 | msg7.setData(b7);
|
|
|
345 | Navit.Navit_progress_h.sendMessage(msg7);
|
|
|
346 | }
|
|
|
347 | else
|
|
|
348 | {
|
|
|
349 | Thread.sleep(400);
|
|
|
350 | }
|
|
|
351 | }
|
|
|
352 | catch (Exception e)
|
|
|
353 | {
|
|
|
354 | }
|
|
|
355 | }
|
|
|
356 |
|
|
|
357 | // save map screenshot
|
|
|
358 | File f = new File(file_name_global);
|
|
|
359 | System.out.println("NNNNN=" + f.getParent() + " / " + f.getName());
|
|
|
360 | Navit.take_map_screenshot(f.getParent(), f.getName());
|
|
|
361 |
|
|
|
362 | flag_route_ready = true;
|
|
|
363 | }
|
|
|
364 | };
|
|
|
365 | debug_zoom_to_route_001.start();
|
|
|
366 |
|
|
|
367 | is_replaying = false;
|
|
|
368 | NavitGraphics.NavitAOverlay_s.postInvalidate();
|
|
|
369 | br.close();
|
|
|
370 | }
|
|
|
371 | }
|
|
|
372 | catch (Exception e)
|
|
|
373 | {
|
|
|
374 | is_replaying = false;
|
|
|
375 | NavitGraphics.NavitAOverlay_s.postInvalidate();
|
|
|
376 | }
|
|
|
377 | }
|
|
|
378 |
|
|
|
379 | static void DR_replay_gps_file(String filename)
|
|
|
380 | {
|
|
|
381 |
|
|
|
382 | System.out.println("ZANaviDebugReceiver:" + "Enter!!");
|
|
|
383 |
|
|
|
384 | stop_me = false;
|
|
|
385 | dont_save_loc = true;
|
|
|
386 |
|
|
|
387 | try
|
|
|
388 | {
|
|
|
389 | if ((filename != null) && (!filename.equals("")))
|
|
|
390 | {
|
|
|
391 |
|
|
|
392 | if (filename.endsWith("yaml"))
|
|
|
393 | {
|
|
|
394 |
|
|
|
395 | DR_replay_yaml_file(filename);
|
|
|
396 |
|
|
|
397 | return;
|
|
|
398 | }
|
|
|
399 |
|
|
|
400 | BufferedReader br = null;
|
|
|
401 | br = new BufferedReader(new FileReader(filename));
|
|
|
402 |
|
192 | Bundle extras2;
|
403 | Bundle extras2;
|
193 |
|
404 |
|
194 | String line = "";
|
405 | String line = "";
|
195 | String[] line_parts;
|
406 | String[] line_parts;
|
196 |
|
407 |
|
|
|
408 | skip_count = skip;
|
|
|
409 | is_replaying = true;
|
|
|
410 | NavitGraphics.NavitAOverlay_s.postInvalidate();
|
|
|
411 |
|
|
|
412 | long line_number = 0;
|
|
|
413 |
|
|
|
414 | disable_normal_location();
|
|
|
415 |
|
197 | while ((line = br.readLine()) != null)
|
416 | while ((line = br.readLine()) != null)
|
198 | {
|
417 | {
|
199 | if (line.length() > 1)
|
418 | //if (line.length() > 1)
|
200 | {
|
419 | //{
|
201 | System.out.println("ZANaviDebugReceiver:" + "line=" + line);
|
420 | // System.out.println("ZANaviDebugReceiver:" + "line=" + line);
|
202 | }
|
421 | //}
|
|
|
422 |
|
|
|
423 | line_number++;
|
203 |
|
424 |
|
204 | if (stop_me == true)
|
425 | if (stop_me == true)
|
205 | {
|
426 | {
|
206 | try
|
427 | try
|
207 | {
|
428 | {
|
… | |
… | |
209 | }
|
430 | }
|
210 | catch (Exception ce)
|
431 | catch (Exception ce)
|
211 | {
|
432 | {
|
212 | ce.printStackTrace();
|
433 | ce.printStackTrace();
|
213 | }
|
434 | }
|
|
|
435 |
|
|
|
436 | is_replaying = false;
|
|
|
437 | NavitGraphics.NavitAOverlay_s.postInvalidate();
|
214 | return;
|
438 | return;
|
|
|
439 | }
|
|
|
440 |
|
|
|
441 | if ((rewind_count > 0) && (skip_count == skip))
|
|
|
442 | {
|
|
|
443 | try
|
|
|
444 | {
|
|
|
445 | // seek to start of file and skip lines
|
|
|
446 | br.close();
|
|
|
447 | br = new BufferedReader(new FileReader(filename));
|
|
|
448 |
|
|
|
449 | line_number = line_number - rewind_count;
|
|
|
450 | rewind_count = 0;
|
|
|
451 | int l_new = 0;
|
|
|
452 |
|
|
|
453 | while (line_number > 0)
|
|
|
454 | {
|
|
|
455 | // just skip lines
|
|
|
456 | line = br.readLine();
|
|
|
457 | // System.out.println("ZANaviDebugReceiver:" + "skip line:" + line + " l=" + l_new);
|
|
|
458 | line_number--;
|
|
|
459 | l_new++;
|
|
|
460 | }
|
|
|
461 |
|
|
|
462 | line_number = l_new;
|
|
|
463 | }
|
|
|
464 | catch (Exception ce)
|
|
|
465 | {
|
|
|
466 | ce.printStackTrace();
|
|
|
467 | }
|
215 | }
|
468 | }
|
216 |
|
469 |
|
217 | if (line.length() > 3)
|
470 | if (line.length() > 3)
|
218 | {
|
471 | {
|
219 | extras2 = new Bundle();
|
472 | extras2 = new Bundle();
|
220 | line_parts = line.split(":", 2);
|
473 | line_parts = line.split(":", 2);
|
221 |
|
474 |
|
222 | if (line_parts[0].equals("CLR"))
|
475 | if (line_parts[0].equals("CLR"))
|
223 | {
|
476 | {
|
|
|
477 | if (skip_count >= skip)
|
|
|
478 | {
|
224 | DR_clear_route();
|
479 | DR_clear_route();
|
225 | Thread.sleep(200);
|
480 | Thread.sleep(200);
|
|
|
481 | }
|
|
|
482 | else
|
|
|
483 | {
|
|
|
484 | skip_count++;
|
|
|
485 | }
|
226 | }
|
486 | }
|
227 | else if (line_parts[0].equals("DST"))
|
487 | else if (line_parts[0].equals("DST"))
|
228 | {
|
488 | {
|
|
|
489 | if (skip_count >= skip)
|
|
|
490 | {
|
229 | extras2.putString("add_destination", line_parts[1]);
|
491 | extras2.putString("add_destination", line_parts[1]);
|
230 | DR_add_destination("add_destination", extras2);
|
492 | DR_add_destination("add_destination", extras2);
|
231 | Thread.sleep(5000); // wait 5 seconds to calc route
|
493 | Thread.sleep(5000); // wait 5 seconds to calc route
|
|
|
494 | }
|
|
|
495 | else
|
|
|
496 | {
|
|
|
497 | skip_count++;
|
|
|
498 | }
|
232 | }
|
499 | }
|
233 | else if (line_parts[0].equals("POS"))
|
500 | else if (line_parts[0].equals("POS"))
|
234 | {
|
501 | {
|
|
|
502 | while (Navit.follow_current == Navit.follow_off)
|
|
|
503 | {
|
|
|
504 | try
|
|
|
505 | {
|
|
|
506 | Thread.sleep(600);
|
|
|
507 | }
|
|
|
508 | catch (Exception sl1)
|
|
|
509 | {
|
|
|
510 | }
|
|
|
511 | }
|
|
|
512 |
|
|
|
513 | if (skip_count >= skip)
|
|
|
514 | {
|
235 | extras2.putString("set_position", line_parts[1]);
|
515 | extras2.putString("set_position", line_parts[1]);
|
236 | DR_set_position("set_position", extras2);
|
516 | DR_set_position("set_position", extras2, false);
|
237 | Thread.sleep(950);
|
517 | Thread.sleep(950); // about 1 second between locationpoints
|
|
|
518 | }
|
|
|
519 | else
|
|
|
520 | {
|
|
|
521 | skip_count++;
|
|
|
522 | }
|
238 | }
|
523 | }
|
239 | else
|
524 | else
|
240 | {
|
525 | {
|
241 | }
|
526 | }
|
242 |
|
527 |
|
243 | }
|
528 | }
|
244 | }
|
529 | }
|
|
|
530 |
|
|
|
531 | is_replaying = false;
|
245 | System.out.println("ZANaviDebugReceiver:" + "while loop end");
|
532 | System.out.println("ZANaviDebugReceiver:" + "while loop end");
|
246 | br.close();
|
533 | br.close();
|
247 | }
|
534 | }
|
248 |
|
535 |
|
249 | }
|
536 | }
|
… | |
… | |
251 | {
|
538 | {
|
252 | e.printStackTrace();
|
539 | e.printStackTrace();
|
253 | System.out.println("ZANaviDebugReceiver:" + "EX:" + e.getMessage());
|
540 | System.out.println("ZANaviDebugReceiver:" + "EX:" + e.getMessage());
|
254 | }
|
541 | }
|
255 |
|
542 |
|
|
|
543 | is_replaying = false;
|
256 | dont_save_loc = true;
|
544 | dont_save_loc = true;
|
|
|
545 |
|
|
|
546 | NavitGraphics.NavitAOverlay_s.postInvalidate();
|
257 |
|
547 |
|
258 | System.out.println("ZANaviDebugReceiver:" + "Leave!!");
|
548 | System.out.println("ZANaviDebugReceiver:" + "Leave!!");
|
259 | }
|
549 | }
|
260 |
|
550 |
|
261 | @Override
|
551 | @Override
|
262 | public void onReceive(Context context, Intent intent)
|
552 | public void onReceive(Context context, Intent intent)
|
263 | {
|
553 | {
|
264 | if (Navit.PREF_enable_debug_enable_comm)
|
554 | if (Navit.p.PREF_enable_debug_enable_comm)
|
265 | {
|
555 | {
|
266 | System.out.println("ZANaviDebugReceiver:" + "enter");
|
556 | System.out.println("ZANaviDebugReceiver:" + "enter");
|
267 | try
|
557 | try
|
268 | {
|
558 | {
|
269 | Bundle extras = intent.getExtras();
|
559 | Bundle extras = intent.getExtras();
|
… | |
… | |
286 | b.putInt("Callback", 97);
|
576 | b.putInt("Callback", 97);
|
287 | b.putString("lat", String.valueOf(lat));
|
577 | b.putString("lat", String.valueOf(lat));
|
288 | b.putString("lon", String.valueOf(lon));
|
578 | b.putString("lon", String.valueOf(lon));
|
289 | b.putString("q", "POSITION");
|
579 | b.putString("q", "POSITION");
|
290 | msg.setData(b);
|
580 | msg.setData(b);
|
291 | Navit.N_NavitGraphics.callback_handler.sendMessage(msg);
|
581 | NavitGraphics.callback_handler.sendMessage(msg);
|
292 |
|
582 |
|
293 | break;
|
583 | break;
|
294 | }
|
584 | }
|
295 | else if (key.equals("set_pos_and_dest"))
|
585 | else if (key.equals("set_pos_and_dest"))
|
296 | {
|
586 | {
|
297 | Object value = extras.get(key);
|
587 | Object value = extras.get(key);
|
298 | String value2 = value.toString().replaceAll("\"", "");
|
588 | String value2 = value.toString().replaceAll("\"", "");
|
299 | String route_name = value2.split(" ", 5)[0];
|
589 | // String route_name = value2.split(" ", 5)[0];
|
300 | float lat1 = Float.parseFloat(value2.split(" ", 5)[2]);
|
590 | float lat1 = Float.parseFloat(value2.split(" ", 5)[2]);
|
301 | float lon1 = Float.parseFloat(value2.split(" ", 5)[1]);
|
591 | float lon1 = Float.parseFloat(value2.split(" ", 5)[1]);
|
302 | float lat2 = Float.parseFloat(value2.split(" ", 5)[4]);
|
592 | float lat2 = Float.parseFloat(value2.split(" ", 5)[4]);
|
303 | float lon2 = Float.parseFloat(value2.split(" ", 5)[3]);
|
593 | float lon2 = Float.parseFloat(value2.split(" ", 5)[3]);
|
304 |
|
594 |
|
… | |
… | |
306 |
|
596 |
|
307 | DR_clear_route();
|
597 | DR_clear_route();
|
308 | Thread.sleep(200);
|
598 | Thread.sleep(200);
|
309 | extras = new Bundle();
|
599 | extras = new Bundle();
|
310 | extras.putString("set_position", "" + lat1 + "," + lon1 + "," + "0.0" + "," + "0");
|
600 | extras.putString("set_position", "" + lat1 + "," + lon1 + "," + "0.0" + "," + "0");
|
311 | DR_set_position("set_position", extras);
|
601 | DR_set_position("set_position", extras, true);
|
312 | Thread.sleep(1000);
|
602 | Thread.sleep(1000);
|
313 | extras = new Bundle();
|
603 | extras = new Bundle();
|
314 | extras.putString("add_destination", "" + lat2 + "," + lon2);
|
604 | extras.putString("add_destination", "" + lat2 + "," + lon2);
|
315 | DR_add_destination("add_destination", extras);
|
605 | DR_add_destination("add_destination", extras);
|
316 |
|
606 |
|
… | |
… | |
332 | // zoom to route
|
622 | // zoom to route
|
333 | Message msg = new Message();
|
623 | Message msg = new Message();
|
334 | Bundle b = new Bundle();
|
624 | Bundle b = new Bundle();
|
335 | b.putInt("Callback", 17);
|
625 | b.putInt("Callback", 17);
|
336 | msg.setData(b);
|
626 | msg.setData(b);
|
337 | Navit.N_NavitGraphics.callback_handler.sendMessage(msg);
|
627 | NavitGraphics.callback_handler.sendMessage(msg);
|
338 |
|
628 |
|
339 | Navit.set_map_position_to_screen_center();
|
629 | Navit.set_map_position_to_screen_center();
|
340 |
|
630 |
|
341 | // save route to gpx file
|
631 | // save route to gpx file
|
342 | DR_save_route_to_gpx_file();
|
632 | DR_save_route_to_gpx_file();
|
… | |
… | |
375 |
|
665 |
|
376 | break;
|
666 | break;
|
377 | }
|
667 | }
|
378 | else if (key.equals("set_position"))
|
668 | else if (key.equals("set_position"))
|
379 | {
|
669 | {
|
380 | DR_set_position(key, extras);
|
670 | DR_set_position(key, extras, true);
|
381 | break;
|
671 | break;
|
382 | }
|
672 | }
|
383 | else if (key.equals("add_destination"))
|
673 | else if (key.equals("add_destination"))
|
384 | {
|
674 | {
|
385 | DR_add_destination(key, extras);
|
675 | DR_add_destination(key, extras);
|
… | |
… | |
402 | // zoom to route
|
692 | // zoom to route
|
403 | Message msg = new Message();
|
693 | Message msg = new Message();
|
404 | Bundle b = new Bundle();
|
694 | Bundle b = new Bundle();
|
405 | b.putInt("Callback", 17);
|
695 | b.putInt("Callback", 17);
|
406 | msg.setData(b);
|
696 | msg.setData(b);
|
407 | Navit.N_NavitGraphics.callback_handler.sendMessage(msg);
|
697 | NavitGraphics.callback_handler.sendMessage(msg);
|
408 |
|
698 |
|
409 | Navit.set_map_position_to_screen_center();
|
699 | Navit.set_map_position_to_screen_center();
|
410 |
|
700 |
|
411 | wait = 0;
|
701 | wait = 0;
|
412 | }
|
702 | }
|