2014-03-12 2 views
0

Я разрабатываю приложение для Android, где у меня есть активность запуска, которая берет идентификатор электронной почты пользователя. Когда пользователь вводит свой идентификатор электронной почты, он перенаправляется на другое действие, которое запрашивает другую аутентификацию пользователя в WebView. После успешной аутентификации пользователя из этого действия начинается дальнейшее выполнение.Изменение активности запуска, когда приложение запускается во второй раз android

Теперь я хочу, чтобы после того, как пользователь был аутентифицирован во втором действии, и он закрывает приложение. В следующий раз, когда он запустит приложение, он не должен видеть активность запуска и перенаправить на вторую активность.

Есть ли способ сделать это? Благодаря

Мой код: -

Animation animTranslate = AnimationUtils.loadAnimation(Login.this, R.anim.translate); 
    animTranslate.setAnimationListener(new AnimationListener() 
    { 

     @Override 
     public void onAnimationStart(Animation arg0) { } 

     @Override 
     public void onAnimationRepeat(Animation arg0) { } 

     @Override 
     public void onAnimationEnd(Animation arg0) 
     { 

       if(LoadUserEmail()==null) 
       { 
        LoginBox.setVisibility(View.VISIBLE); 
        Animation animFade = AnimationUtils.loadAnimation(Login.this, R.anim.fade); 
        LoginBox.startAnimation(animFade); 
       } 
       else 
       { 
        Intent myIntent = new Intent(Login.this, Details1.class); 
        startActivity(myIntent); 
       } 
      } 

    }); 
public void onClick(View v) 
      { 
       // TODO Auto-generated method stub 
        // username, deviceId, deviceName parameters 
        boolean didItWork =true; 

        username = editUser.getText().toString().trim(); 

        if(username.length()==0) 
        { 

         Toast.makeText(getApplicationContext(), "Please enter a valid email address", Toast.LENGTH_LONG).show(); 
         didItWork = false; 
        } 


        else 
        { 
        isUserSaved = true; 
        didItWork = true; 
        SaveUsersEmail(username); 
        checkUsername = LoadUserEmail(); 
} 

public void SaveUsersEmail(String username) 
    { 
     PreferenceManager.getDefaultSharedPreferences(this).edit().putString("Username", 
        username).commit(); 


    } 



public String LoadUserEmail() 
    { 
     String username = PreferenceManager.getDefaultSharedPreferences(this).getString("Username", 
       "Please login"); 
     return username; 
    } 

ответ

0

Вы должны сохранить маркер аутентификации в SharedPreferences и использовать его в следующий раз. Если вы не используете токен аутентификации, вы можете сохранить учетные данные в SharedPreferences и использовать их в следующий раз.

EDIT

Вы должны сделать проверку в пусковой деятельности. Что-то вроде (псевдокод):

Read values from SharedPreferences 
if(values != null) 
    go to some activity you want 
else 
    go to second activity (i.e. login activity) 
+0

Спасибо за ваш ответ. Я сделал это для второго действия, когда пользователь вводит свои учетные данные на веб-странице. В активности запуска только поле EditText, которое принимает идентификатор электронной почты. В следующий раз, когда я запустил приложение, он снова покажет мне активность запуска. В основном мне нужно изменить активность запуска после второго запуска. Можете ли вы предоставить мне пример – user3354605

+0

@ user3354605 Да, вам придется изменить код для запуска. См. Редактирование в моем ответе. –

+0

Спасибо. Я даю ему попробовать и обновить \ – user3354605

Смежные вопросы