2015-04-14 3 views
1

У меня есть приложение, которое использует логин, используя Google+. Я хочу, чтобы экран входа в систему отображался только в первый раз, а затем, когда пользователь выходит из приложения. Что я должен сделать для этого? Я использую это как firstActivity для приложения.Android: Храните логическое устройство на устройстве

import android.content.Intent; 
import android.support.v7.app.ActionBarActivity; 
import android.os.Bundle; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.view.View; 


public class firstActivity extends ActionBarActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_first); 
     findViewById(R.id.sign_in_button).setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent i = new Intent(getApplicationContext(), LoginActivity.class); 
       startActivity(i); 
       finish(); 
      } 
     }); 
    } 
} 

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

ответ

1

Добавить значение в SharedPreference и изменить его во время входа в систему и выхода из системы. См. Ссылку this. После входа в систему сохранить значение в sharedPreference и после авторизации Измените значение в sharedPreference

0

Используйте SharedPreference, чтобы хранить краткую информацию. Это лучший набор для вашего требования. SharedPreference

Example

+0

Будет ли это глобальной переменной и быть доступным во всех действиях, так как я должен установить значение false при выходе пользователя из системы? –

+0

Специфично для приложения. Он может быть доступен для всех видов деятельности в приложении. –

0

Сохранить переменную со значением в SharedPreferences первый раз, когда вы входите, то каждый раз при входе проверьте сохраненное значение. Когда вы выходите из системы, вы можете переписать это значение, чтобы при повторном запуске приложения, так как сохраненное значение отличается, оно будет входить в систему.

Чтобы сохранить значение для общих настроек, вам необходимо выполнить следующие действия: Ниже приводится сохранение строковой переменной: Здесь MyData - это имя файла, в котором будет сохранено значение.

SharedPreferences sharedPreferences = getSharedPreferences("MyData", Context.MODE_PRIVATE); 
        SharedPreferences.Editor editor = sharedPreferences.edit(); 
        editor.putString("position", Long.toString(id)); 
        editor.commit(); 

Вы можете получить сохраненное значение, как показано ниже:

SharedPreferences sharedPreferences = getSharedPreferences("MyData", Context.MODE_PRIVATE); 
     String position = sharedPreferences.getString("position", "0"); 

Вы можете использовать, как он подходит вам.

Надеюсь, это вам поможет.

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