List of usage examples for android.os Bundle getLong
public long getLong(String key)
From source file:com.zoffcc.applications.zanavi.Navit.java
@SuppressLint("NewApi") @Override//from w w w. j a v a 2 s. co m public void onResume() { // if (Navit.METHOD_DEBUG) Navit.my_func_name(0); // System.gc(); super.onResume(); // // --- alive timestamp --- // app_status_lastalive = System.currentTimeMillis(); // System.out.println("app_status_string set:[onResume]:app_status_lastalive=" + app_status_lastalive); // PreferenceManager.getDefaultSharedPreferences(this).edit().putLong(PREF_KEY_LASTALIVE, app_status_lastalive).commit(); // // --- alive timestamp --- // hide main progress bar ------------ if (Navit.progressbar_main_activity.getVisibility() == View.VISIBLE) { Navit.progressbar_main_activity.setProgress(0); Navit.progressbar_main_activity.setVisibility(View.GONE); } // hide main progress bar ------------ try { sensorManager.registerListener(lightSensorEventListener, lightSensor, (int) (8 * 1000000)); // updates approx. every 8 seconds } catch (Exception e) { } // get the intent fresh !! ---------- startup_intent = this.getIntent(); // get the intent fresh !! ---------- // ------------- get all the flags for intro pages ------------- // ------------- get all the flags for intro pages ------------- // ------------- get all the flags for intro pages ------------- try { intro_flag_nomaps = false; if (!have_maps_installed()) { if ((!NavitMapDownloader.download_active) && (!NavitMapDownloader.download_active_start)) { intro_flag_nomaps = true; } } } catch (Exception e) { } try { intro_flag_indexmissing = false; allow_use_index_search(); if (Navit_index_on_but_no_idx_files) { if (!NavitMapDownloader.download_active_start) { intro_flag_indexmissing = true; } } } catch (Exception e) { } intro_flag_firststart = PreferenceManager.getDefaultSharedPreferences(this).getBoolean(PREF_KEY_FIRST_START, true); if (intro_flag_firststart) { intro_flag_update = false; } if (EasyPermissions.hasPermissions(this, perms)) { // have permissions! intro_flag_permissions = false; } else { // ask for permissions intro_flag_permissions = true; } // only show in onCreate() ------ // if (intro_show_count > 0) // { // intro_flag_info = false; // intro_flag_firststart = false; // intro_flag_update = false; // } // only show in onCreate() ------ // ------------- get all the flags for intro pages ------------- // ------------- get all the flags for intro pages ------------- // ------------- get all the flags for intro pages ------------- // -------------- INTRO -------------- // -------------- INTRO -------------- // -------------- INTRO -------------- if (Navit.CIDEBUG == 0) // -MAT-INTRO- { // intro_flag_nomaps = true; // intro_flag_info = true; // intro_flag_firststart = false; // intro_flag_update = false; // intro_flag_indexmissing = false; // intro_flag_crash = true; if (intro_flag_crash || intro_flag_firststart || intro_flag_indexmissing || intro_flag_info || intro_flag_nomaps || intro_flag_permissions || intro_flag_update) { System.out.println("flags=" + "intro_flag_crash:" + intro_flag_crash + " intro_flag_firststart:" + intro_flag_firststart + " intro_flag_indexmissing:" + intro_flag_indexmissing + " intro_flag_info:" + intro_flag_info + " intro_flag_nomaps:" + intro_flag_nomaps + " intro_flag_permissions:" + intro_flag_permissions + " intro_flag_update:" + intro_flag_update); // intro pages System.out.println("ZANaviMainIntroActivity:" + "start count=" + intro_show_count); intro_show_count++; Intent intent = new Intent(this, ZANaviMainIntroActivityStatic.class); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); startActivityForResult(intent, ZANaviIntro_id); } } // // -------------- INTRO -------------- // // -------------- INTRO -------------- // // -------------- INTRO -------------- PackageInfo pkgInfo; Navit_Plugin_001_Installed = false; try { // is the donate version installed? pkgInfo = getPackageManager().getPackageInfo("com.zoffcc.applications.zanavi_msg", 0); String sharedUserId = pkgInfo.sharedUserId; System.out.println("str nd=" + sharedUserId); if (sharedUserId.equals("com.zoffcc.applications.zanavi")) { System.out.println("##plugin 001##"); Navit_Plugin_001_Installed = true; } } catch (Exception e) { e.printStackTrace(); } // ---- Intent dump ---- // ---- Intent dump ---- // ---- Intent dump ---- // ---- Intent dump ---- try { System.out.println("XXIIXX:111"); String mid_str = this.getIntent().getExtras().getString("com.zoffcc.applications.zanavi.mid"); System.out.println("XXIIXX:111a:mid_str=" + mid_str); if (mid_str != null) { if (mid_str.equals("201:UPDATE-APP")) { // a new ZANavi version is available, show something to the user here ------------------- // a new ZANavi version is available, show something to the user here ------------------- // a new ZANavi version is available, show something to the user here ------------------- // a new ZANavi version is available, show something to the user here ------------------- // a new ZANavi version is available, show something to the user here ------------------- // a new ZANavi version is available, show something to the user here ------------------- } else if (mid_str.startsWith("202:UPDATE-MAP:")) { System.out.println("need to update1:" + mid_str); System.out.println("need to update2:" + mid_str.substring(15)); auto_start_update_map(mid_str.substring(15)); } } System.out.println("XXIIXX:111b:mid_str=" + mid_str); } catch (Exception e) { e.printStackTrace(); System.out.println("XXIIXX:111:EEEE"); } try { System.out.println("XXIIXX:" + this.getIntent()); Bundle bundle77 = this.getIntent().getExtras(); System.out.println("XXIIXX:" + intent_flags_to_string(this.getIntent().getFlags())); if (bundle77 == null) { System.out.println("XXIIXX:" + "null"); } else { for (String key : bundle77.keySet()) { Object value = bundle77.get(key); System.out.println("XXIIXX:" + String.format("%s %s (%s)", key, value.toString(), value.getClass().getName())); } } } catch (Exception ee22) { String exst = Log.getStackTraceString(ee22); System.out.println("XXIIXX:ERR:" + exst); } // ---- Intent dump ---- // ---- Intent dump ---- // ---- Intent dump ---- // ---- Intent dump ---- is_paused = false; Navit_doubleBackToExitPressedOnce = false; app_window = getWindow(); Log.e("Navit", "OnResume"); while (Global_Init_Finished == 0) { Log.e("Navit", "OnResume:Global_Init_Finished==0 !!!!!"); try { Thread.sleep(30, 0); // sleep } catch (InterruptedException e) { } } //InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); cwthr.NavitActivity2(1); try { NSp.resume_me(); } catch (Exception e) { e.printStackTrace(); } NavitVehicle.turn_on_sat_status(); try { if (wl != null) { // try // { // wl.release(); // } // catch (Exception e2) // { // } wl.acquire(); Log.e("Navit", "WakeLock: acquire 2"); } } catch (Exception e) { e.printStackTrace(); } //Intent caller = this.getIntent(); //System.out.println("A=" + caller.getAction() + " D=" + caller.getDataString()); //System.out.println("C=" + caller.getComponent().flattenToString()); if (unsupported) { class CustomListener implements View.OnClickListener { private final Dialog dialog; public CustomListener(Dialog dialog) { this.dialog = dialog; } @Override public void onClick(View v) { // Do whatever you want here // If you want to close the dialog, uncomment the line below //dialog.dismiss(); } } AlertDialog.Builder dialog = new AlertDialog.Builder(this); dialog.setTitle("WeltBild Tablet"); dialog.setCancelable(false); dialog.setMessage("Your device is not supported!"); dialog.show(); //Button theButton = dialog.getButton(DialogInterface.BUTTON_POSITIVE); //theButton.setOnClickListener(new CustomListener(dialog)); } // reset "maps too old" flag Navit_maps_too_old = false; if (Navit_maps_loaded == false) { Navit_maps_loaded = true; // activate all maps Log.e("Navit", "**** LOAD ALL MAPS **** start"); Message msg3 = new Message(); Bundle b3 = new Bundle(); b3.putInt("Callback", 20); msg3.setData(b3); NavitGraphics.callback_handler.sendMessage(msg3); Log.e("Navit", "**** LOAD ALL MAPS **** end"); } try { NavitGraphics.no_maps_container.setVisibility(View.INVISIBLE); // if (!have_maps_installed()) // { // // System.out.println("MMMM=no maps installed"); // // show semi transparent box "no maps installed" ------------------ // // show semi transparent box "no maps installed" ------------------ // NavitGraphics.no_maps_container.setVisibility(View.VISIBLE); // try // { // NavitGraphics.no_maps_container.setActivated(true); // } // catch (NoSuchMethodError e) // { // } // // show_case_001(); // // // show semi transparent box "no maps installed" ------------------ // // show semi transparent box "no maps installed" ------------------ // } // else // { // NavitGraphics.no_maps_container.setVisibility(View.INVISIBLE); // try // { // NavitGraphics.no_maps_container.setActivated(false); // } // catch (NoSuchMethodError e) // { // } // } } catch (Exception e) { e.printStackTrace(); } try { // draw map no-async Message msg = new Message(); Bundle b = new Bundle(); b.putInt("Callback", 64); msg.setData(b); NavitGraphics.callback_handler.sendMessage(msg); } catch (Exception e) { e.printStackTrace(); } String intent_data = null; try { //Log.e("Navit", "**9**A " + startup_intent.getAction()); //Log.e("Navit", "**9**D " + startup_intent.getDataString()); int type = 1; // default = assume it's a map coords intent try { String si = startup_intent.getDataString(); String tmp2 = si.split(":", 2)[0]; Log.e("Navit", "**9a**A " + startup_intent.getAction()); Log.e("Navit", "**9a**D " + startup_intent.getDataString() + " " + tmp2); if (tmp2.equals("file")) { Log.e("Navit", "**9b**D " + startup_intent.getDataString() + " " + tmp2); if (si.toLowerCase().endsWith(".gpx")) { Log.e("Navit", "**9c**D " + startup_intent.getDataString() + " " + tmp2); type = 4; } } } catch (Exception e2) { } if (type != 4) { Bundle extras = startup_intent.getExtras(); // System.out.println("DH:001"); if (extras != null) { // System.out.println("DH:002"); long l = extras.getLong("com.zoffcc.applications.zanavi.ZANAVI_INTENT_type"); // System.out.println("DH:003 l=" + l); if (l != 0L) { // System.out.println("DH:004"); if (l == Navit.NAVIT_START_INTENT_DRIVE_HOME) { // System.out.println("DH:005"); type = 2; // call from drive-home-widget } // ok, now remove that key extras.remove("com.zoffcc.applications.zanavi"); startup_intent.replaceExtras((Bundle) null); // System.out.println("DH:006"); } } } // ------------------------ BIG LOOP ------------------------ // ------------------------ BIG LOOP ------------------------ if (type == 2) { // drive home // check if we have a home location int home_id = find_home_point(); if (home_id != -1) { Message msg7 = progress_handler.obtainMessage(); Bundle b7 = new Bundle(); msg7.what = 2; // long Toast message b7.putString("text", Navit.get_text("driving to Home Location")); //TRANS msg7.setData(b7); progress_handler.sendMessage(msg7); // clear any previous destinations Message msg2 = new Message(); Bundle b2 = new Bundle(); b2.putInt("Callback", 7); msg2.setData(b2); NavitGraphics.callback_handler.sendMessage(msg2); // set position to middle of screen ----------------------- // set position to middle of screen ----------------------- // set position to middle of screen ----------------------- // Message msg67 = new Message(); // Bundle b67 = new Bundle(); // b67.putInt("Callback", 51); // b67.putInt("x", (int) (NavitGraphics.Global_dpi_factor * Navit.NG__map_main.view.getWidth() / 2)); // b67.putInt("y", (int) (NavitGraphics.Global_dpi_factor * Navit.NG__map_main.view.getHeight() / 2)); // msg67.setData(b67); // N_NavitGraphics.callback_handler.sendMessage(msg67); // set position to middle of screen ----------------------- // set position to middle of screen ----------------------- // set position to middle of screen ----------------------- try { Thread.sleep(60); } catch (Exception e) { } Navit.destination_set(); // set destination to home location // String lat = String.valueOf(map_points.get(home_id).lat); // String lon = String.valueOf(map_points.get(home_id).lon); // String q = map_points.get(home_id).point_name; route_wrapper(map_points.get(home_id).point_name, 0, 0, false, map_points.get(home_id).lat, map_points.get(home_id).lon, true); final Thread zoom_to_route_001 = new Thread() { int wait = 1; int count = 0; int max_count = 60; @Override public void run() { while (wait == 1) { try { if ((NavitGraphics.navit_route_status == 17) || (NavitGraphics.navit_route_status == 33)) { zoom_to_route(); wait = 0; } else { wait = 1; } count++; if (count > max_count) { wait = 0; } else { Thread.sleep(400); } } catch (Exception e) { } } } }; zoom_to_route_001.start(); // try // { // show_geo_on_screen(Float.parseFloat(lat), Float.parseFloat(lon)); // } // catch (Exception e2) // { // e2.printStackTrace(); // } try { Navit.follow_button_on(); } catch (Exception e2) { e2.printStackTrace(); } } else { // no home location set Message msg = progress_handler.obtainMessage(); Bundle b = new Bundle(); msg.what = 2; // long Toast message b.putString("text", Navit.get_text("No Home Location set")); //TRANS msg.setData(b); progress_handler.sendMessage(msg); } } else if (type == 4) { if (startup_intent != null) { // Log.e("Navit", "**7**A " + startup_intent.getAction() + System.currentTimeMillis() + " " + Navit.startup_intent_timestamp); if (System.currentTimeMillis() <= Navit.startup_intent_timestamp + 4000L) { Log.e("Navit", "**7**A " + startup_intent.getAction()); Log.e("Navit", "**7**D " + startup_intent.getDataString()); intent_data = startup_intent.getDataString(); try { intent_data = java.net.URLDecoder.decode(intent_data, "UTF-8"); } catch (Exception e1) { e1.printStackTrace(); } // we consumed the intent, so reset timestamp value to avoid double consuming of event Navit.startup_intent_timestamp = 0L; if (intent_data != null) { // file:///mnt/sdcard/zanavi_pos_recording_347834278.gpx String tmp1; tmp1 = intent_data.split(":", 2)[1].substring(2); Log.e("Navit", "**7**f=" + tmp1); // convert gpx file --------------------- convert_gpx_file_real(tmp1); } } } } else if (type == 1) { if (startup_intent != null) { if (System.currentTimeMillis() <= Navit.startup_intent_timestamp + 4000L) { Log.e("Navit", "**2**A " + startup_intent.getAction()); Log.e("Navit", "**2**D " + startup_intent.getDataString()); intent_data = startup_intent.getDataString(); // we consumed the intent, so reset timestamp value to avoid double consuming of event Navit.startup_intent_timestamp = 0L; if (intent_data != null) { // set position to middle of screen ----------------------- // set position to middle of screen ----------------------- // set position to middle of screen ----------------------- // Message msg67 = new Message(); // Bundle b67 = new Bundle(); // b67.putInt("Callback", 51); // b67.putInt("x", (int) (NavitGraphics.Global_dpi_factor * Navit.NG__map_main.view.getWidth() / 2)); // b67.putInt("y", (int) (NavitGraphics.Global_dpi_factor * Navit.NG__map_main.view.getHeight() / 2)); // msg67.setData(b67); // N_NavitGraphics.callback_handler.sendMessage(msg67); // set position to middle of screen ----------------------- // set position to middle of screen ----------------------- // set position to middle of screen ----------------------- } } else { Log.e("Navit", "timestamp for navigate_to expired! not using data"); } } System.out.println("SUI:000a " + intent_data); if ((intent_data != null) && ((substring_without_ioobe(intent_data, 0, 18) .equals("google.navigation:")) || (substring_without_ioobe(intent_data, 0, 23).equals("http://maps.google.com/")) || (substring_without_ioobe(intent_data, 0, 24).equals("https://maps.google.com/")))) { System.out.println("SUI:000b"); // better use regex later, but for now to test this feature its ok :-) // better use regex later, but for now to test this feature its ok :-) // g: google.navigation:///?ll=49.4086,17.4855&entry=w&opt= // d: google.navigation:q=blabla-strasse # (this happens when you are offline, or from contacts) // b: google.navigation:q=48.25676,16.643 // a: google.navigation:ll=48.25676,16.643&q=blabla-strasse // e: google.navigation:ll=48.25676,16.643&title=blabla-strasse // sample: -> google.navigation:ll=48.026096,16.023993&title=N%C3%B6stach+43%2C+2571+N%C3%B6stach&entry=w // -> google.navigation:ll=48.014413,16.005579&title=Hainfelder+Stra%C3%9Fe+44%2C+2571%2C+Austria&entry=w // f: google.navigation:ll=48.25676,16.643&... // c: google.navigation:ll=48.25676,16.643 // h: http://maps.google.com/?q=48.222210,16.387058&z=16 // i: https://maps.google.com/?q=48.222210,16.387058&z=16 // i:,h: https://maps.google.com/maps/place?ftid=0x476d07075e933fc5:0xccbeba7fe1e3dd36&q=48.222210,16.387058&ui=maps_mini // // ??!!new??!!: http://maps.google.com/?cid=10549738100504591748&hl=en&gl=gb String lat; String lon; String q; String temp1 = null; String temp2 = null; String temp3 = null; boolean parsable = false; boolean unparsable_info_box = true; try { intent_data = java.net.URLDecoder.decode(intent_data, "UTF-8"); } catch (Exception e1) { e1.printStackTrace(); } // DEBUG // DEBUG // DEBUG // intent_data = "google.navigation:q=Wien Burggasse 27"; // intent_data = "google.navigation:q=48.25676,16.643"; // intent_data = "google.navigation:ll=48.25676,16.643&q=blabla-strasse"; // intent_data = "google.navigation:ll=48.25676,16.643"; // DEBUG // DEBUG // DEBUG try { Log.e("Navit", "found DEBUG 1: " + intent_data.substring(0, 20)); Log.e("Navit", "found DEBUG 2: " + intent_data.substring(20, 22)); Log.e("Navit", "found DEBUG 3: " + intent_data.substring(20, 21)); Log.e("Navit", "found DEBUG 4: " + intent_data.split("&").length); Log.e("Navit", "found DEBUG 4.1: yy" + intent_data.split("&")[1].substring(0, 1).toLowerCase() + "yy"); Log.e("Navit", "found DEBUG 5: xx" + intent_data.split("&")[1] + "xx"); } catch (Exception e) { e.printStackTrace(); } if (!Navit.NavitStartupAlreadySearching) { if (intent_data.length() > 19) { // if h: then show target if (substring_without_ioobe(intent_data, 0, 23).equals("http://maps.google.com/")) { Uri uri = Uri.parse(intent_data); Log.e("Navit", "target found (h): " + uri.getQueryParameter("q")); parsable = true; intent_data = "google.navigation:ll=" + uri.getQueryParameter("q") + "&q=Target"; } // if i: then show target else if (substring_without_ioobe(intent_data, 0, 24) .equals("https://maps.google.com/")) { Uri uri = Uri.parse(intent_data); Log.e("Navit", "target found (i): " + uri.getQueryParameter("q")); parsable = true; intent_data = "google.navigation:ll=" + uri.getQueryParameter("q") + "&q=Target"; } // if d: then start target search else if ((substring_without_ioobe(intent_data, 0, 20).equals("google.navigation:q=")) && ((!substring_without_ioobe(intent_data, 20, 21).equals('+')) && (!substring_without_ioobe(intent_data, 20, 21).equals('-')) && (!substring_without_ioobe(intent_data, 20, 22) .matches("[0-9][0-9]")))) { Log.e("Navit", "target found (d): " + intent_data.split("q=", -1)[1]); Navit.NavitStartupAlreadySearching = true; start_targetsearch_from_intent(intent_data.split("q=", -1)[1]); // dont use this here, already starting search, so set to "false" parsable = false; unparsable_info_box = false; } // if b: then remodel the input string to look like a: else if (substring_without_ioobe(intent_data, 0, 20).equals("google.navigation:q=")) { intent_data = "ll=" + intent_data.split("q=", -1)[1] + "&q=Target"; Log.e("Navit", "target found (b): " + intent_data); parsable = true; } // if g: [google.navigation:///?ll=49.4086,17.4855&...] then remodel the input string to look like a: else if (substring_without_ioobe(intent_data, 0, 25) .equals("google.navigation:///?ll=")) { intent_data = "google.navigation:ll=" + intent_data.split("ll=", -1)[1].split("&", -1)[0] + "&q=Target"; Log.e("Navit", "target found (g): " + intent_data); parsable = true; } // if e: then remodel the input string to look like a: else if ((substring_without_ioobe(intent_data, 0, 21).equals("google.navigation:ll=")) && (intent_data.split("&").length > 1) && (substring_without_ioobe(intent_data.split("&")[1], 0, 1).toLowerCase() .equals("f"))) { int idx = intent_data.indexOf("&"); intent_data = substring_without_ioobe(intent_data, 0, idx) + "&q=Target"; Log.e("Navit", "target found (e): " + intent_data); parsable = true; } // if f: then remodel the input string to look like a: else if ((substring_without_ioobe(intent_data, 0, 21).equals("google.navigation:ll=")) && (intent_data.split("&").length > 1)) { int idx = intent_data.indexOf("&"); intent_data = intent_data.substring(0, idx) + "&q=Target"; Log.e("Navit", "target found (f): " + intent_data); parsable = true; } // already looks like a: just set flag else if ((substring_without_ioobe(intent_data, 0, 21).equals("google.navigation:ll=")) && (intent_data.split("&q=").length > 1)) { // dummy, just set the flag Log.e("Navit", "target found (a): " + intent_data); Log.e("Navit", "target found (a): " + intent_data.split("&q=").length); parsable = true; } // if c: then remodel the input string to look like a: else if ((substring_without_ioobe(intent_data, 0, 21).equals("google.navigation:ll=")) && (intent_data.split("&q=").length < 2)) { intent_data = intent_data + "&q=Target"; Log.e("Navit", "target found (c): " + intent_data); parsable = true; } } } else { Log.e("Navit", "already started search from startup intent"); parsable = false; unparsable_info_box = false; } if (parsable) { // now string should be in form --> a: // now split the parts off temp1 = intent_data.split("&q=", -1)[0]; try { temp3 = temp1.split("ll=", -1)[1]; temp2 = intent_data.split("&q=", -1)[1]; } catch (Exception e) { // java.lang.ArrayIndexOutOfBoundsException most likely // so let's assume we dont have '&q=xxxx' temp3 = temp1; } if (temp2 == null) { // use some default name temp2 = "Target"; } lat = temp3.split(",", -1)[0]; lon = temp3.split(",", -1)[1]; q = temp2; // is the "search name" url-encoded? i think so, lets url-decode it here q = URLDecoder.decode(q); // System.out.println(); Navit.remember_destination(q, lat, lon); Navit.destination_set(); Message msg = new Message(); Bundle b = new Bundle(); b.putInt("Callback", 3); b.putString("lat", lat); b.putString("lon", lon); b.putString("q", q); msg.setData(b); NavitGraphics.callback_handler.sendMessage(msg); final Thread zoom_to_route_002 = new Thread() { int wait = 1; int count = 0; int max_count = 60; @Override public void run() { while (wait == 1) { try { if ((NavitGraphics.navit_route_status == 17) || (NavitGraphics.navit_route_status == 33)) { zoom_to_route(); wait = 0; } else { wait = 1; } count++; if (count > max_count) { wait = 0; } else { Thread.sleep(400); } } catch (Exception e) { } } } }; zoom_to_route_002.start(); // try // { // Thread.sleep(400); // } // catch (InterruptedException e) // { // } // // // try // // { // // show_geo_on_screen(Float.parseFloat(lat), Float.parseFloat(lon)); // // } // // catch (Exception e2) // // { // // e2.printStackTrace(); // // } try { Navit.follow_button_on(); } catch (Exception e2) { e2.printStackTrace(); } } else { if (unparsable_info_box && !searchBoxShown) { try { searchBoxShown = true; String searchString = intent_data.split("q=")[1]; searchString = searchString.split("&")[0]; searchString = URLDecoder.decode(searchString); // decode the URL: e.g. %20 -> space Log.e("Navit", "Search String :" + searchString); executeSearch(searchString); } catch (Exception e) { // safety net try { Log.e("Navit", "problem with startup search 7 str=" + intent_data); } catch (Exception e2) { e2.printStackTrace(); } } } } } else if ((intent_data != null) && (substring_without_ioobe(intent_data, 0, 10).equals("geo:0,0?q="))) { // g: geo:0,0?q=wien%20burggasse System.out.println("SUI:001"); boolean parsable = false; boolean unparsable_info_box = true; try { intent_data = java.net.URLDecoder.decode(intent_data, "UTF-8"); } catch (Exception e1) { e1.printStackTrace(); } System.out.println("SUI:002"); if (!Navit.NavitStartupAlreadySearching) { if (intent_data.length() > 10) { // if g: then start target search Log.e("Navit", "target found (g): " + intent_data.split("q=", -1)[1]); Navit.NavitStartupAlreadySearching = true; start_targetsearch_from_intent(intent_data.split("q=", -1)[1]); // dont use this here, already starting search, so set to "false" parsable = false; unparsable_info_box = false; } } else { Log.e("Navit", "already started search from startup intent"); parsable = false; unparsable_info_box = false; } if (unparsable_info_box && !searchBoxShown) { try { searchBoxShown = true; String searchString = intent_data.split("q=")[1]; searchString = searchString.split("&")[0]; searchString = URLDecoder.decode(searchString); // decode the URL: e.g. %20 -> space Log.e("Navit", "Search String :" + searchString); executeSearch(searchString); } catch (Exception e) { // safety net try { Log.e("Navit", "problem with startup search 88 str=" + intent_data); } catch (Exception e2) { e2.printStackTrace(); } } } } else if ((intent_data != null) && (substring_without_ioobe(intent_data, 0, 4).equals("geo:"))) { // g: geo:16.8,46.3?z=15 System.out.println("SUI:002a"); boolean parsable = false; boolean unparsable_info_box = true; String tmp1; String tmp2; String tmp3; float lat1 = 0; float lon1 = 0; int zoom1 = 15; try { intent_data = java.net.URLDecoder.decode(intent_data, "UTF-8"); } catch (Exception e1) { e1.printStackTrace(); } if (!Navit.NavitStartupAlreadySearching) { try { tmp1 = intent_data.split(":", 2)[1]; tmp2 = tmp1.split("\\?", 2)[0]; tmp3 = tmp1.split("\\?", 2)[1]; lat1 = Float.parseFloat(tmp2.split(",", 2)[0]); lon1 = Float.parseFloat(tmp2.split(",", 2)[1]); zoom1 = Integer.parseInt(tmp3.split("z=", 2)[1]); parsable = true; } catch (Exception e4) { e4.printStackTrace(); } } if (parsable) { // geo: intent -> only show destination on map! // set nice zoomlevel before we show destination // int zoom_want = zoom1; // // // Message msg = new Message(); // Bundle b = new Bundle(); // b.putInt("Callback", 33); // b.putString("s", Integer.toString(zoom_want)); // msg.setData(b); // try // { // N_NavitGraphics.callback_handler.sendMessage(msg); // Navit.GlobalScaleLevel = Navit_SHOW_DEST_ON_MAP_ZOOMLEVEL; // if ((zoom_want > 8) && (zoom_want < 17)) // { // Navit.GlobalScaleLevel = (int) (Math.pow(2, (18 - zoom_want))); // System.out.println("GlobalScaleLevel=" + Navit.GlobalScaleLevel); // } // } // catch (Exception e) // { // e.printStackTrace(); // } // if (PREF_save_zoomlevel) // { // setPrefs_zoomlevel(); // } // set nice zoomlevel before we show destination try { Navit.follow_button_off(); } catch (Exception e2) { e2.printStackTrace(); } show_geo_on_screen(lat1, lon1); // final Thread zoom_to_route_003 = new Thread() // { // @Override // public void run() // { // try // { // Thread.sleep(200); // show_geo_on_screen(lat1, lon1); // } // catch (Exception e) // { // } // } // }; // zoom_to_route_003.start(); } } } System.out.println("SUI:099 XX" + substring_without_ioobe(intent_data, 0, 10) + "XX"); // clear intent startup_intent = null; // ------------------------ BIG LOOP ------------------------ // ------------------------ BIG LOOP ------------------------ } catch (Exception e) { e.printStackTrace(); System.out.println("SUI:199"); } // clear intent startup_intent = null; // hold all map drawing ----------- Message msg = new Message(); Bundle b = new Bundle(); b.putInt("Callback", 69); msg.setData(b); try { NavitGraphics.callback_handler.sendMessage(msg); } catch (Exception e) { } // hold all map drawing ----------- getPrefs(); activatePrefs(); sun_moon__mLastCalcSunMillis = -1L; push_pin_view = (ImageView) findViewById(R.id.bottom_slide_left_side); if (p.PREF_follow_gps) { push_pin_view.setImageResource(R.drawable.pin1_down); } else { push_pin_view.setImageResource(R.drawable.pin1_up); } // paint for bitmapdrawing on map if (p.PREF_use_anti_aliasing) { NavitGraphics.paint_for_map_display.setAntiAlias(true); } else { NavitGraphics.paint_for_map_display.setAntiAlias(false); } if (p.PREF_use_map_filtering) { NavitGraphics.paint_for_map_display.setFilterBitmap(true); } else { NavitGraphics.paint_for_map_display.setFilterBitmap(false); } // activate gps AFTER 3g-location NavitVehicle.turn_on_precise_provider(); // allow all map drawing ----------- msg = new Message(); b = new Bundle(); b.putInt("Callback", 70); msg.setData(b); try { NavitGraphics.callback_handler.sendMessage(msg); } catch (Exception e) { } // allow all map drawing ----------- // --- disabled --- NavitVehicle.set_last_known_pos_fast_provider(); try { //Simulate = new SimGPS(NavitVehicle.vehicle_handler_); //Simulate.start(); } catch (Exception e) { e.printStackTrace(); } try { watchmem = new WatchMem(); watchmem.start(); } catch (Exception e) { e.printStackTrace(); } // ----- check if we have some index files downloaded ----- if (api_version_int < 11) { if (Navit.have_maps_installed()) { if (Navit_maps_too_old) { TextView no_maps_text = (TextView) this.findViewById(R.id.no_maps_text); no_maps_text.setText("\n\n\n" + Navit.get_text("Some Maps are too old!") + "\n" + Navit.get_text("Please update your maps") + "\n\n"); try { NavitGraphics.no_maps_container.setVisibility(View.VISIBLE); try { NavitGraphics.no_maps_container.setActivated(true); } catch (NoSuchMethodError e) { } NavitGraphics.no_maps_container.bringToFront(); } catch (Exception e) { e.printStackTrace(); } } else { allow_use_index_search(); if (Navit_index_on_but_no_idx_files) { TextView no_maps_text = (TextView) this.findViewById(R.id.no_maps_text); no_maps_text.setText("\n\n\n" + Navit.get_text("No Index for some Maps") + "\n" + Navit.get_text("Please update your maps") + "\n\n"); try { NavitGraphics.no_maps_container.setVisibility(View.VISIBLE); try { NavitGraphics.no_maps_container.setActivated(true); } catch (NoSuchMethodError e) { } NavitGraphics.no_maps_container.bringToFront(); } catch (Exception e) { e.printStackTrace(); } } else { try { NavitGraphics.no_maps_container.setVisibility(View.INVISIBLE); try { NavitGraphics.no_maps_container.setActivated(false); } catch (NoSuchMethodError e) { } } catch (Exception e) { e.printStackTrace(); } } } } } else { try { NavitGraphics.no_maps_container.setVisibility(View.INVISIBLE); try { NavitGraphics.no_maps_container.setActivated(false); } catch (NoSuchMethodError e) { } } catch (Exception e) { e.printStackTrace(); } } // ----- check if we have some index files downloaded ----- // ---- DEBUG ---- // ---- DEBUG ---- // ---- DEBUG ---- try { if (!NavitVehicle.is_pos_recording) { if (p.PREF_enable_debug_write_gpx) { NavitVehicle.pos_recording_start(); NavitVehicle.pos_recording_add(0, 0, 0, 0, 0, 0); } } } catch (Exception e) { } // ---- DEBUG ---- // ---- DEBUG ---- // ---- DEBUG ---- // glSurfaceView.onResume(); // if (Navit.METHOD_DEBUG) Navit.my_func_name(1); if (Navit.CIDEBUG == 1) { new Thread() { public void run() { try { System.out.println("DR_run_all_yaml_tests --> want"); if (CIRUN == false) { System.out.println("DR_run_all_yaml_tests --> do"); CIRUN = true; Thread.sleep(20000); // 20 secs. ZANaviDebugReceiver.DR_run_all_yaml_tests(); } } catch (Exception e) { } } }.start(); } }
From source file:com.zoffcc.applications.zanavi.Navit.java
protected void onNewIntent(Intent intent) { super.onNewIntent(intent); try {//w w w. j a v a 2 s . c o m System.out.println("XXIIXX(2):111"); String mid_str = intent.getExtras().getString("com.zoffcc.applications.zanavi.mid"); System.out.println("XXIIXX(2):111a:mid_str=" + mid_str); if (mid_str != null) { if (mid_str.equals("201:UPDATE-APP")) { // a new ZANavi version is available, show something to the user here ------------------- // a new ZANavi version is available, show something to the user here ------------------- // a new ZANavi version is available, show something to the user here ------------------- // a new ZANavi version is available, show something to the user here ------------------- // a new ZANavi version is available, show something to the user here ------------------- // a new ZANavi version is available, show something to the user here ------------------- } else if (mid_str.startsWith("202:UPDATE-MAP:")) { // System.out.println("need to update1:" + mid_str); // System.out.println("need to update2:" + mid_str.substring(15)); auto_start_update_map(mid_str.substring(15)); } } System.out.println("XXIIXX(2):111b:mid_str=" + mid_str); } catch (Exception e) { e.printStackTrace(); System.out.println("XXIIXX(2):111:EEEE"); } // ---- Intent dump ---- // ---- Intent dump ---- // ---- Intent dump ---- // ---- Intent dump ---- try { System.out.println("XXIIXX(2):" + intent); Bundle bundle77 = intent.getExtras(); System.out.println("XXIIXX(2):" + intent_flags_to_string(intent.getFlags())); if (bundle77 == null) { System.out.println("XXIIXX(2):" + "null"); } else { for (String key : bundle77.keySet()) { Object value = bundle77.get(key); System.out.println("XXIIXX(2):" + String.format("%s %s (%s)", key, value.toString(), value.getClass().getName())); } } } catch (Exception ee22) { String exst = Log.getStackTraceString(ee22); System.out.println("XXIIXX(2):ERR:" + exst); } // ---- Intent dump ---- // ---- Intent dump ---- // ---- Intent dump ---- // ---- Intent dump ---- Log.e("Navit", "3:**1**A " + intent.getAction()); Log.e("Navit", "3:**1**D " + intent.getDataString()); Log.e("Navit", "3:**1**S " + intent.toString()); try { Log.e("Navit", "3:**1**S " + intent.getExtras().describeContents()); } catch (Exception ee3) { } // if (Navit.startup_intent == null) { try { // make a copy of the given intent object // Navit.startup_intent = intent.cloneFilter(); Navit.startup_intent = intent; Log.e("Navit", "3a:**1**001"); Bundle extras2 = intent.getExtras(); Log.e("Navit", "3a:**1**002"); try { Navit.startup_intent.putExtras(extras2); Log.e("Navit", "3a:**1**003"); } catch (Exception e4) { if (startup_intent.getDataString() != null) { // we have a "geo:" thingy intent, use it // or "gpx file" Log.e("Navit", "3c:**1**A " + startup_intent.getAction()); Log.e("Navit", "3c:**1**D " + startup_intent.getDataString()); Log.e("Navit", "3c:**1**S " + startup_intent.toString()); } else { Log.e("Navit", "3X:**1**X "); Navit.startup_intent = null; } // hack! remeber timstamp, and only allow 4 secs. later in onResume to set target! Navit.startup_intent_timestamp = System.currentTimeMillis(); return; } // Intent { act=android.intent.action.VIEW // cat=[android.intent.category.DEFAULT] // dat=file:///mnt/sdcard/zanavi_pos_recording_347834278.gpx // cmp=com.zoffcc.applications.zanavi/.Navit } // hack! remeber timstamp, and only allow 4 secs. later in onResume to set target! Navit.startup_intent_timestamp = System.currentTimeMillis(); Log.e("Navit", "3a:**1**A " + startup_intent.getAction()); Log.e("Navit", "3a:**1**D " + startup_intent.getDataString()); Log.e("Navit", "3a:**1**S " + startup_intent.toString()); if (extras2 != null) { long l = extras2.getLong("com.zoffcc.applications.zanavi.ZANAVI_INTENT_type"); // System.out.println("DH:a007 l=" + l); if (l != 0L) { if (l == Navit.NAVIT_START_INTENT_DRIVE_HOME) { // Log.e("Navit", "2:**1** started via drive home"); // we have been called from "drive home" widget // drive home // check if we have a home location int home_id = find_home_point(); if (home_id != -1) { Message msg7 = progress_handler.obtainMessage(); Bundle b7 = new Bundle(); msg7.what = 2; // long Toast message b7.putString("text", Navit.get_text("driving to Home Location")); //TRANS msg7.setData(b7); progress_handler.sendMessage(msg7); // clear any previous destinations Message msg2 = new Message(); Bundle b2 = new Bundle(); b2.putInt("Callback", 7); msg2.setData(b2); NavitGraphics.callback_handler.sendMessage(msg2); // set position to middle of screen ----------------------- // set position to middle of screen ----------------------- // set position to middle of screen ----------------------- // Message msg67 = new Message(); // Bundle b67 = new Bundle(); // b67.putInt("Callback", 51); // b67.putInt("x", (int) (NavitGraphics.Global_dpi_factor * Navit.NG__map_main.view.getWidth() / 2)); // b67.putInt("y", (int) (NavitGraphics.Global_dpi_factor * Navit.NG__map_main.view.getHeight() / 2)); // msg67.setData(b67); // N_NavitGraphics.callback_handler.sendMessage(msg67); // set position to middle of screen ----------------------- // set position to middle of screen ----------------------- // set position to middle of screen ----------------------- try { Thread.sleep(60); } catch (Exception e) { } route_wrapper(map_points.get(home_id).point_name, 0, 0, false, map_points.get(home_id).lat, map_points.get(home_id).lon, true); // Navit.destination_set(); // // // set destination to home location // String lat = String.valueOf(map_points.get(home_id).lat); // String lon = String.valueOf(map_points.get(home_id).lon); // String q = map_points.get(home_id).point_name; // // // System.out.println("lat=" + lat + " lon=" + lon + " name=" + q); // // Message msg55 = new Message(); // Bundle b55 = new Bundle(); // b55.putInt("Callback", 3); // b55.putString("lat", lat); // b55.putString("lon", lon); // b55.putString("q", q); // msg55.setData(b55); // NavitGraphics.callback_handler.sendMessage(msg55); final Thread zoom_to_route_001 = new Thread() { int wait = 1; int count = 0; int max_count = 60; @Override public void run() { while (wait == 1) { try { if ((NavitGraphics.navit_route_status == 17) || (NavitGraphics.navit_route_status == 33)) { zoom_to_route(); wait = 0; } else { wait = 1; } count++; if (count > max_count) { wait = 0; } else { Thread.sleep(400); } } catch (Exception e) { } } } }; zoom_to_route_001.start(); // try // { // show_geo_on_screen(Float.parseFloat(lat), Float.parseFloat(lon)); // } // catch (Exception e2) // { // e2.printStackTrace(); // } try { Navit.follow_button_on(); } catch (Exception e2) { e2.printStackTrace(); } } else { // no home location set Message msg = progress_handler.obtainMessage(); Bundle b = new Bundle(); msg.what = 2; // long Toast message b.putString("text", Navit.get_text("No Home Location set")); //TRANS msg.setData(b); progress_handler.sendMessage(msg); } } } else { if (startup_intent.getDataString() != null) { // we have a "geo:" thingy intent, use it // or "gpx file" } else { Navit.startup_intent = null; } } } else { if (startup_intent.getDataString() != null) { // we have a "geo:" thingy intent, use it } else { Navit.startup_intent = null; } } } catch (Exception e99) { Navit.startup_intent = null; } } }