Example usage for android.os Bundle get

List of usage examples for android.os Bundle get

Introduction

In this page you can find the example usage for android.os Bundle get.

Prototype

@Nullable
public Object get(String key) 

Source Link

Document

Returns the entry with the given key as an object.

Usage

From source file:com.swisscom.safeconnect.activity.DashboardActivity.java

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.dashboard);/*w  w w  .  jav a  2 s.com*/

    vpnServiceIntentProvider = new VpnServiceIntentProvider() {
        @Override
        public Intent getIntent() {
            Intent intent = new Intent(DashboardActivity.this, CharonVpnService.class);
            intent.putExtra(Config.VPN_PROFILE_BUNDLE_KEY, mProfile);
            return intent;
        }
    };

    btnRescaleMap = (Button) findViewById(R.id.btn_rescale_map);
    btnRescaleMap.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            btnRescaleMap.setVisibility(View.GONE);
            viewMap.setAllowRecalcBounds();
        }
    });

    viewSubscrStatus = (SubscriptionStatusView) findViewById(R.id.view_subscr_status);
    viewSubscrStatus.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if (mOpenSubscriptions)
                return;

            // if subscription expired, make sure that the VPN is disconnected before
            // opening the subscriptions activity
            Subscription cur = viewSubscrStatus.getCurrentSubscription();
            if (cur != null && cur.getValidTill() * 1000 <= System.currentTimeMillis()
                    && mVpnState != VpnStateService.State.DISABLED) {
                mOpenSubscriptions = true;
                disconnectVpn();
            } else {
                openSubscriptionsActivity();
            }
        }
    });

    viewConnStatus = (ConnectionStatusView) findViewById(R.id.view_conn_status);
    viewConnStatus.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            switch (viewConnStatus.getConnectionState()) {
            case CONNECTED:
                disconnectVpn();
                break;
            case DISCONNECTED:
            case UNAVAILABLE:
                connectVpn();
                break;
            default:
                break;
            }
        }
    });

    viewMap = (WorldMapView) findViewById(R.id.view_world_map);
    viewMap.setOnUserMapInteractionListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            btnRescaleMap.setVisibility(View.VISIBLE);
        }
    });

    if (!Config.getInstance().getAuthToken().isEmpty()) {
        bindVpnService();
    }

    if (savedInstanceState == null) {
        getSupportFragmentManager().beginTransaction().replace(R.id.frame_sidebar, new InfoFragment()).commit();

        // in case DashboardActivity gets killed in the meantime, the intent of a
        // newly created DashboardActivity will still contain the old value in its
        // intent. onSaveInstanceState works though.
        mOpenSubscriptions = getIntent() != null && (getIntent().getBooleanExtra(KEY_OPEN_SUBSCRIPTIONS, false)
                || getIntent().getAction() == Intent.ACTION_VIEW && getIntent().getDataString() != null
                        && getIntent().getDataString().contains("subscribe"));

    } else {
        mOpenSubscriptions = savedInstanceState.getBoolean(KEY_OPEN_SUBSCRIPTIONS, false);
        viewConnStatus
                .setConnectionState((ConnectionStatusView.VpnState) savedInstanceState.get(KEY_CONN_STATUS));
    }

    subscrManager = new SubscriptionsManager(this, savedInstanceState);
    handler.postRunnable(subscriptionsFetchRunnable);

    // show what's new if needed
    if (Config.getInstance().isAppGotUpdated()) {
        Config.getInstance().clearAppUpdatedFlag();

        WhatsnewDialogFragment dlg = new WhatsnewDialogFragment();
        FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
        Fragment prev = getSupportFragmentManager().findFragmentByTag("whatsnew");
        if (prev != null) {
            ft.remove(prev);
        }
        ft.addToBackStack(null);
        dlg.show(ft, "whatsnew");
    }
}

From source file:cgeo.geocaching.cgeocaches.java

@Override
public Loader<SearchResult> onCreateLoader(int type, Bundle extras) {
    if (type >= CacheListLoaderType.values().length) {
        throw new IllegalArgumentException("invalid loader type " + type);
    }/*from w w w  . ja  v  a 2  s .c o  m*/
    CacheListLoaderType enumType = CacheListLoaderType.values()[type];
    AbstractSearchLoader loader = null;
    switch (enumType) {
    case OFFLINE:
        listId = Settings.getLastList();
        if (listId <= StoredList.TEMPORARY_LIST_ID) {
            listId = StoredList.STANDARD_LIST_ID;
            title = res.getString(R.string.stored_caches_button);
        } else {
            final StoredList list = cgData.getList(listId);
            // list.id may be different if listId was not valid
            listId = list.id;
            title = list.title;
        }

        loader = new OfflineGeocacheListLoader(this.getBaseContext(), coords, listId);

        break;
    case HISTORY:
        title = res.getString(R.string.caches_history);
        loader = new HistoryGeocacheListLoader(app, coords);
        break;
    case NEAREST:
        title = res.getString(R.string.caches_nearby);
        loader = new CoordsGeocacheListLoader(app, coords);
        break;
    case COORDINATE:
        title = coords.toString();
        loader = new CoordsGeocacheListLoader(app, coords);
        break;
    case KEYWORD:
        final String keyword = extras.getString(Intents.EXTRA_KEYWORD);
        title = keyword;
        loader = new KeywordGeocacheListLoader(app, keyword);
        break;
    case ADDRESS:
        final String address = extras.getString(Intents.EXTRA_ADDRESS);
        if (StringUtils.isNotBlank(address)) {
            title = address;
        } else {
            title = coords.toString();
        }
        if (coords != null) {
            loader = new CoordsGeocacheListLoader(app, coords);
        } else {
            loader = new AddressGeocacheListLoader(app, address);
        }
        break;
    case USERNAME:
        final String username = extras.getString(Intents.EXTRA_USERNAME);
        title = username;
        loader = new UsernameGeocacheListLoader(app, username);
        break;
    case OWNER:
        final String ownerName = extras.getString(Intents.EXTRA_USERNAME);
        title = ownerName;
        loader = new OwnerGeocacheListLoader(app, ownerName);
        break;
    case MAP:
        //TODO Build Nullloader
        title = res.getString(R.string.map_map);
        search = (SearchResult) extras.get(Intents.EXTRA_SEARCH);
        replaceCacheListFromSearch();
        loadCachesHandler.sendMessage(Message.obtain());
        break;
    case REMOVE_FROM_HISTORY:
        title = res.getString(R.string.caches_history);
        loader = new RemoveFromHistoryLoader(app, extras.getStringArray(Intents.EXTRA_CACHELIST), coords);
        break;
    case NEXT_PAGE:
        loader = new NextPageGeocacheListLoader(app, search);
        break;
    }
    setTitle(title);
    showProgress(true);
    showFooterLoadingCaches();

    if (loader != null) {
        loader.setRecaptchaHandler(new SearchHandler(this, res, loader));
    }
    return loader;
}

From source file:com.example.haizhu.myvoiceassistant.ui.RobotChatActivity.java

public void initListener() {
    recognitionListener = new RecognitionListener() {
        @Override//from  w  w w .j a  va2 s  .  c  o m
        public void onReadyForSpeech(Bundle bundle) {

        }

        @Override
        public void onBeginningOfSpeech() {

        }

        @Override
        public void onRmsChanged(float v) {
            final int VTAG = 0xFF00AA01;
            Integer rawHeight = (Integer) speechWave.getTag(VTAG);
            if (rawHeight == null) {
                rawHeight = speechWave.getLayoutParams().height;
                speechWave.setTag(VTAG, rawHeight);
            }

            RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) speechWave.getLayoutParams();
            params.height = (int) (rawHeight * v * 0.01);
            params.height = Math.max(params.height, speechWave.getMeasuredWidth());
            speechWave.setLayoutParams(params);
        }

        @Override
        public void onBufferReceived(byte[] bytes) {

        }

        @Override
        public void onEndOfSpeech() {

        }

        @Override
        public void onError(int error) {
            StringBuilder sb = new StringBuilder();
            switch (error) {
            case SpeechRecognizer.ERROR_AUDIO:
                sb.append("");
                break;
            case SpeechRecognizer.ERROR_SPEECH_TIMEOUT:
                sb.append("");
                break;
            case SpeechRecognizer.ERROR_CLIENT:
                sb.append("");
                break;
            case SpeechRecognizer.ERROR_INSUFFICIENT_PERMISSIONS:
                sb.append("???");
                break;
            case SpeechRecognizer.ERROR_NETWORK:
                sb.append("");
                break;
            case SpeechRecognizer.ERROR_NO_MATCH:
                sb.append("?");
                break;
            case SpeechRecognizer.ERROR_RECOGNIZER_BUSY:
                sb.append("");
                break;
            case SpeechRecognizer.ERROR_SERVER:
                sb.append("?");
                break;
            case SpeechRecognizer.ERROR_NETWORK_TIMEOUT:
                sb.append("");
                break;
            }
            sb.append(":" + error);
            print("" + sb.toString());
            Message message = mhandler.obtainMessage(RECOGNIZE_ERROR);
            message.obj = sb.toString();
            mhandler.sendMessage(message);
        }

        @Override
        public void onResults(Bundle results) {
            ArrayList<String> nbest = results.getStringArrayList(SpeechRecognizer.RESULTS_RECOGNITION);
            print("?" + Arrays.toString(nbest.toArray(new String[nbest.size()])));
            String json_res = results.getString("origin_result");
            String results_nlu_json = results.getString("results_nlu");
            Message message = mhandler.obtainMessage(RECOGNIZE_SUCESS);
            message.obj = results_nlu_json;
            mhandler.sendMessage(message); //?UI
            ResultsAnalysisManager.analyseResult(results_nlu_json);
            print("result_nlu=\n" + results_nlu_json);
            try {
                print("origin_result=\n" + new JSONObject(json_res).toString(4));
            } catch (Exception e) {
                print("origin_result=[warning: bad json]\n" + json_res);
            }
        }

        @Override
        public void onPartialResults(Bundle bundle) {

        }

        @Override
        public void onEvent(int eventType, Bundle bundle) {
            switch (eventType) {
            case 11:
                String reason = bundle.get("reason") + "";
                print("EVENT_ERROR, " + reason);
                Message message = mhandler.obtainMessage(RECOGNIZE_ERROR);
                message.obj = reason;
                mhandler.sendMessage(message);
                break;
            }
        }
    };

    speechSynthesizerListener = new SpeechSynthesizerListener() {
        @Override
        public void onStartWorking(SpeechSynthesizer speechSynthesizer) {

        }

        @Override
        public void onSpeechStart(SpeechSynthesizer speechSynthesizer) {

        }

        @Override
        public void onNewDataArrive(SpeechSynthesizer speechSynthesizer, byte[] bytes, boolean b) {

        }

        @Override
        public void onBufferProgressChanged(SpeechSynthesizer speechSynthesizer, int i) {

        }

        @Override
        public void onSpeechProgressChanged(SpeechSynthesizer speechSynthesizer, int i) {

        }

        @Override
        public void onSpeechPause(SpeechSynthesizer speechSynthesizer) {

        }

        @Override
        public void onSpeechResume(SpeechSynthesizer speechSynthesizer) {

        }

        @Override
        public void onCancel(SpeechSynthesizer speechSynthesizer) {

        }

        @Override
        public void onSynthesizeFinish(SpeechSynthesizer speechSynthesizer) {

        }

        @Override
        public void onSpeechFinish(SpeechSynthesizer speechSynthesizer) {

        }

        @Override
        public void onError(SpeechSynthesizer speechSynthesizer, SpeechError speechError) {

        }
    };
}

From source file:org.cm.podd.report.activity.ReportActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    LocalBroadcastManager broadcastManager = LocalBroadcastManager.getInstance(this);
    broadcastManager.registerReceiver(mAlertReceiver, new IntentFilter(FollowAlertService.TAG));

    broadcastManager.registerReceiver(new BroadcastReceiver() {
        @Override/*from  w  w w . j a  v a 2 s .  co m*/
        public void onReceive(Context context, Intent intent) {
            long administrationAreaId = intent.getLongExtra("administrationAreaId", -99);
            setRegionId(administrationAreaId);
        }
    }, new IntentFilter(SyncAdministrationAreaService.TAG));

    sharedPrefUtil = new SharedPrefUtil(this);

    setContentView(R.layout.activity_report);

    Toolbar myToolbar = findViewById(R.id.report_toolbar);
    setSupportActionBar(myToolbar);

    long areaId = sharedPrefUtil.getDefaultAdministrationAreaId();
    if (areaId != -99) {
        setRegionId(areaId);
    }

    formView = findViewById(R.id.form);
    locationView = findViewById(R.id.location);

    textProgressLocationView = findViewById(R.id.progress_location_text);
    textProgressLocationView.setTypeface(StyleUtil.getDefaultTypeface(getAssets(), Typeface.NORMAL));
    countdownTextView = findViewById(R.id.countdownTextView);
    countdownTextView.setTypeface(StyleUtil.getDefaultTypeface(getAssets(), Typeface.NORMAL));
    refreshLocationButton = findViewById(R.id.refresh_location_button);
    refreshLocationButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            requestGPSLocation();
            startLocationSearchTimeoutCountdown();
        }
    });
    progressBar = findViewById(R.id.progressBar);

    prevBtn = findViewById(R.id.prevBtn);
    nextBtn = findViewById(R.id.nextBtn);
    nextBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            nextScreen();
        }
    });
    nextBtn.setTypeface(StyleUtil.getDefaultTypeface(getAssets(), Typeface.NORMAL));
    prevBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            onBackPressed();
        }
    });
    prevBtn.setTypeface(StyleUtil.getDefaultTypeface(getAssets(), Typeface.NORMAL));

    disableMaskView = findViewById(R.id.disableMask);

    reportDataSource = new ReportDataSource(this);
    reportTypeDataSource = new ReportTypeDataSource(this);
    reportQueueDataSource = new ReportQueueDataSource(this);

    recordSpecDataSource = RecordSpecDataSource.Companion.getInstance(this);
    followAlertDataSource = new FollowAlertDataSource(this);

    if (savedInstanceState != null) {
        currentFragment = savedInstanceState.getString("currentFragment");
        reportId = savedInstanceState.getLong("reportId");
        reportType = savedInstanceState.getLong("reportType");
        follow = savedInstanceState.getBoolean("follow");
        testReport = savedInstanceState.getBoolean("testReport");
        formIterator = (FormIterator) savedInstanceState.getSerializable("formIterator");
        if (formIterator != null) {
            trigger = formIterator.getForm().getTrigger();
        }
        reportSubmit = savedInstanceState.getInt("reportSubmit");
        followActionName = savedInstanceState.getString("followActionName");
        Log.d(TAG, "onCreate from savedInstance, testFlag = " + testReport);

        currentLatitude = savedInstanceState.getDouble("currentLatitude");
        currentLongitude = savedInstanceState.getDouble("currentLongitude");
        recordSpec = (RecordSpec) savedInstanceState.get("recordSpec");
        parentReportGuid = savedInstanceState.getString("parentReportGuid");
    } else {
        Intent intent = getIntent();
        String action = intent.getAction();
        int startPageId = -1;
        switch (action) {
        case ACTION_NEW_REPORT:
            reportType = intent.getLongExtra("reportType", 0);
            testReport = intent.getBooleanExtra("test", false);
            reportId = reportDataSource.createDraftReport(reportType, testReport);
            follow = false;
            break;
        case FollowAlertService.ORG_CM_PODD_REPORT_FOLLOW:
            reportType = intent.getLongExtra("reportType", 0);
            testReport = false;
            reportId = intent.getLongExtra("reportId", -99);
            follow = intent.getBooleanExtra("follow", false);
            break;
        case ACTION_FOR_EDIT_OR_VIEW:
            reportType = intent.getLongExtra("reportType", 0);
            testReport = intent.getBooleanExtra("test", false);
            reportId = intent.getLongExtra("reportId", -99);
            break;
        case ACTION_CREATE_FOLLOW_REPORT:
            reportType = intent.getLongExtra("reportType", 0);
            parentReportId = intent.getLongExtra("reportId", -99);
            reportId = reportDataSource.createFollowReport(parentReportId);
            follow = true;
            followActionName = "follow";
            break;
        case ACTION_CREATE_FOLLOW_REPORT_WITH_ACTION:
            reportType = intent.getLongExtra("reportType", 0);
            parentReportId = intent.getLongExtra("reportId", -99);
            reportId = reportDataSource.createFollowReport(parentReportId);
            follow = true;
            followActionName = intent.getStringExtra("followActionName");
            startPageId = intent.getIntExtra("startPageId", -1);
            break;
        case ACTION_CREATE_FOLLOW_REPORT_FROM_RECORD:
            reportType = intent.getLongExtra("reportType", 0);
            parentReportGuid = intent.getStringExtra("parentReportGuid");
            String preloadFormData = intent.getStringExtra("preloadFormData");
            reportId = reportDataSource.createFollowReport(reportType, parentReportGuid, preloadFormData);
            follow = true;
            break;

        }

        Form form = reportTypeDataSource.getForm(reportType);
        trigger = form.getTrigger();
        if (trigger != null) {
            Log.d(TAG, String.format(
                    "This report type contain a trigger with pattern:%s, pageId:%d, notificationText:%s",
                    trigger.getPattern(), trigger.getPageId(), trigger.getNotificationText()));
        }
        if (intent.getAction() != null
                && intent.getAction().equals(FollowAlertService.ORG_CM_PODD_REPORT_FOLLOW)) {
            form.setStartWithTrigger(true);
        }

        if (startPageId != -1) {
            form.setStartPageId(startPageId);
        }

        formIterator = new FormIterator(form);
        Report report = loadFormData(form);
        recordSpec = recordSpecDataSource.getByReportTypeId(report.getType());

        nextScreen();
    }

    if (recordSpec != null) {
        final FirebaseContext firebaseContext = FirebaseContext.Companion
                .getInstance(PreferenceContext.Companion.getInstance(getApplicationContext()));
        firebaseContext.auth(this, new Function1<Boolean, Unit>() {
            @Override
            public Unit invoke(Boolean success) {
                if (success) {
                    recordDataSource = firebaseContext.recordDataSource(recordSpec, parentReportGuid);
                }
                return null;
            }
        });
    }

    // open location service only when
    // 1. Create a New report
    // 2. Edit a draft report which don't have any location attach.
    if ((reportSubmit == 0) && (currentLatitude == 0.00)) {
        buildGoogleApiClient();
        if (formIterator.getForm().isForceLocation()) {
            switchToProgressLocationMode();
        }
    }

    /* check softkeyboard visibility */
    final View rootView = getWindow().getDecorView().findViewById(android.R.id.content);
    rootView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
        @Override
        public void onGlobalLayout() {
            // different devices' screens have normal height diff differently
            // eg, roughly 5.5" xxhdpi has 220px, 4.5" xhdpi has 110px, 4", 3.5" hdpi has 75px
            int heightDiff = rootView.getRootView().getHeight() - rootView.getHeight();
            int limitHeightPx = (int) (getResources().getDisplayMetrics().density * 100);
            Log.d(TAG, String.format("diff height=%d, limit height=%d", heightDiff, limitHeightPx));
        }
    });

    Tracker tracker = ((PoddApplication) getApplication()).getTracker(PoddApplication.TrackerName.APP_TRACKER);
    tracker.setScreenName("Report-" + reportType);
    tracker.send(new HitBuilders.AppViewBuilder().build());

    startTime = System.currentTimeMillis();
}

From source file:com.if3games.chessonline.DroidFish.java

/**
 * Return PGN/FEN data or filename from the Intent. Both can not be non-null.
 * @return Pair of PGN/FEN data and filename.
 *//*w ww.j av a2s  .  co  m*/
private final Pair<String, String> getPgnOrFenIntent() {
    String pgnOrFen = null;
    String filename = null;
    try {
        Intent intent = getIntent();
        Uri data = intent.getData();
        if (data == null) {
            Bundle b = intent.getExtras();
            if (b != null) {
                Object strm = b.get(Intent.EXTRA_STREAM);
                if (strm instanceof Uri) {
                    data = (Uri) strm;
                    if ("file".equals(data.getScheme())) {
                        filename = data.getEncodedPath();
                        if (filename != null)
                            filename = Uri.decode(filename);
                    }
                }
            }
        }
        if (data == null) {
            if ((Intent.ACTION_SEND.equals(intent.getAction()) || Intent.ACTION_VIEW.equals(intent.getAction()))
                    && ("application/x-chess-pgn".equals(intent.getType())
                            || "application/x-chess-fen".equals(intent.getType())))
                pgnOrFen = intent.getStringExtra(Intent.EXTRA_TEXT);
        } else {
            String scheme = intent.getScheme();
            if ("file".equals(scheme)) {
                filename = data.getEncodedPath();
                if (filename != null)
                    filename = Uri.decode(filename);
            }
            if ((filename == null) && ("content".equals(scheme) || "file".equals(scheme))) {
                ContentResolver resolver = getContentResolver();
                InputStream in = resolver.openInputStream(intent.getData());
                StringBuilder sb = new StringBuilder();
                while (true) {
                    byte[] buffer = new byte[16384];
                    int len = in.read(buffer);
                    if (len <= 0)
                        break;
                    sb.append(new String(buffer, 0, len));
                }
                pgnOrFen = sb.toString();
            }
        }
    } catch (IOException e) {
        Toast.makeText(getApplicationContext(), R.string.failed_to_read_pgn_data, Toast.LENGTH_SHORT).show();
    }
    return new Pair<String, String>(pgnOrFen, filename);
}

From source file:cgeo.geocaching.CacheListActivity.java

@Override
public Loader<SearchResult> onCreateLoader(final int type, final Bundle extras) {
    if (type >= CacheListLoaderType.values().length) {
        throw new IllegalArgumentException("invalid loader type " + type);
    }/*from w  w w.  java 2  s.  co m*/
    final CacheListLoaderType enumType = CacheListLoaderType.values()[type];
    AbstractSearchLoader loader = null;
    switch (enumType) {
    case OFFLINE:
        // open either the requested or the last list
        if (extras.containsKey(Intents.EXTRA_LIST_ID)) {
            listId = extras.getInt(Intents.EXTRA_LIST_ID);
        } else {
            listId = Settings.getLastDisplayedList();
        }
        if (listId == PseudoList.ALL_LIST.id) {
            title = res.getString(R.string.list_all_lists);
        } else if (listId <= StoredList.TEMPORARY_LIST.id) {
            listId = StoredList.STANDARD_LIST_ID;
            title = res.getString(R.string.stored_caches_button);
        } else {
            final StoredList list = DataStore.getList(listId);
            // list.id may be different if listId was not valid
            if (list.id != listId) {
                showToast(getString(R.string.list_not_available));
            }
            listId = list.id;
            title = list.title;
        }

        loader = new OfflineGeocacheListLoader(this, coords, listId);

        break;
    case HISTORY:
        title = res.getString(R.string.caches_history);
        listId = PseudoList.HISTORY_LIST.id;
        loader = new HistoryGeocacheListLoader(this, coords);
        break;
    case NEAREST:
        title = res.getString(R.string.caches_nearby);
        loader = new CoordsGeocacheListLoader(this, coords);
        break;
    case COORDINATE:
        title = coords.toString();
        loader = new CoordsGeocacheListLoader(this, coords);
        break;
    case KEYWORD:
        final String keyword = extras.getString(Intents.EXTRA_KEYWORD);
        title = listNameMemento.rememberTerm(keyword);
        if (keyword != null) {
            loader = new KeywordGeocacheListLoader(this, keyword);
        }
        break;
    case ADDRESS:
        final String address = extras.getString(Intents.EXTRA_ADDRESS);
        if (StringUtils.isNotBlank(address)) {
            title = listNameMemento.rememberTerm(address);
        } else {
            title = coords.toString();
        }
        loader = new CoordsGeocacheListLoader(this, coords);
        break;
    case FINDER:
        final String username = extras.getString(Intents.EXTRA_USERNAME);
        title = listNameMemento.rememberTerm(username);
        if (username != null) {
            loader = new FinderGeocacheListLoader(this, username);
        }
        break;
    case OWNER:
        final String ownerName = extras.getString(Intents.EXTRA_USERNAME);
        title = listNameMemento.rememberTerm(ownerName);
        if (ownerName != null) {
            loader = new OwnerGeocacheListLoader(this, ownerName);
        }
        break;
    case MAP:
        //TODO Build Null loader
        title = res.getString(R.string.map_map);
        search = (SearchResult) extras.get(Intents.EXTRA_SEARCH);
        replaceCacheListFromSearch();
        loadCachesHandler.sendMessage(Message.obtain());
        break;
    case NEXT_PAGE:
        loader = new NextPageGeocacheListLoader(this, search);
        break;
    case POCKET:
        final String guid = extras.getString(Intents.EXTRA_POCKET_GUID);
        title = listNameMemento.rememberTerm(extras.getString(Intents.EXTRA_NAME));
        loader = new PocketGeocacheListLoader(this, guid);
        break;
    }
    // if there is a title given in the activity start request, use this one instead of the default
    if (extras != null && StringUtils.isNotBlank(extras.getString(Intents.EXTRA_TITLE))) {
        title = extras.getString(Intents.EXTRA_TITLE);
    }
    if (loader != null && extras != null && extras.getSerializable(BUNDLE_ACTION_KEY) != null) {
        final AfterLoadAction action = (AfterLoadAction) extras.getSerializable(BUNDLE_ACTION_KEY);
        loader.setAfterLoadAction(action);
    }
    updateTitle();
    showProgress(true);
    showFooterLoadingCaches();

    return loader;
}

From source file:me.ububble.speakall.fragment.ConversationChatFragment.java

public void onRetoreInstanceState(Bundle inState) {
    this.contact = (Contact) inState.get("contacto");
}

From source file:com.zoffcc.applications.zanavi.Navit.java

protected void onNewIntent(Intent intent) {
    super.onNewIntent(intent);

    try {//from   w  ww.  j a v a2 s. co  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;
        }

    }

}

From source file:com.zoffcc.applications.zanavi.Navit.java

@SuppressLint("NewApi")
@Override//w ww . ja  va2  s.c o 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();
    }
}