@Nick2015

SignActivity and back stack.....?

Суть такая:
Есть SignActivity в ней происходит авторизация с помощью соцсетей, после авторизации пользователя через 5 секунд перебрасывает на следующее активити в котором происходит работа. Также с этой активити которая ведра после регистрации могу перейти на актов с авторизацией. Вопрос вот в чем как сделать чтобы то активити НЕ добавлялося в бэк стек.
Это роботает..... нооо
android:noHistory="true"
нооо:
тогда когда пользователь заходит 1 раз и проходит авторизацию она не срабатывает и просто закрываеться програма(активити). Как можно отследить отрикие этой com.facebook.FacebookActivity и просле нажатие кнопки "Ок"(есть еще отмена когда пользователь соглашаеться) переоткрыть.... Или в чем проблема вот сам код.....
private void getUserDetailsFromFB() {
        Bundle parameters = new Bundle();
        parameters.putString("fields", "id,email,name,picture");
        if(mFbProfile !=null)
            Log.i("ID",""+        mFbProfile.getId());

        new GraphRequest(
                AccessToken.getCurrentAccessToken(),
                "/me",
                parameters,
                HttpMethod.GET,
                new GraphRequest.Callback() {
                    public void onCompleted(GraphResponse response) {
            /* handle the result */
                        try {

                            Log.d("Response", response.getRawResponse());
                            email = response.getJSONObject().getString("email");
                            mEmailID.setText(email);

                            name = response.getJSONObject().getString("name");
                            mUsername.setText(name);

                              saveNewUser();

                        } catch (JSONException e) {
                            e.printStackTrace();
                        }
                    }
                }
        ).executeAsync();
    }

И даные пользователя записуються в parse.com
private void saveNewUser() {
        parseUser = ParseUser.getCurrentUser();
        parseUser.setUsername(name);
        parseUser.setEmail(email);
//        Finally save all the user details
                    parseUser.saveInBackground(new SaveCallback() {
                        @Override
                        public void done(ParseException e) {
                            Toast.makeText(SignActivity.this, "New user:" + name + " Signed up", Toast.LENGTH_SHORT).show();
                        }
                    });

Подскажите пожалалуйста!!!
  • Вопрос задан
  • 160 просмотров
Решения вопроса 1
Вообще вы можете использовать при старте новой activity флаг FLAG_ACTIVITY_CLEAR_TOP:
Intent intent = new Intent(getBaseContext(), NewActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();

Флаг FLAG_ACTIVITY_CLEAR_TOP как раз и позволит при открытии новой активности очистить стек.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы