我有一个使用Google+登录的应用。 我希望登录屏幕仅在第一次出现,然后在用户退出应用程序时出现。我该怎么办? 我将此作为应用的第一个活动。
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();
}
});
}
}
现在我不知道如何创建一个可以赋值并存储在设备上的变量,只有在注销时才会更改。我该怎么办?
答案 0 :(得分:1)
在SharedPreference
中添加值,并在登录和注销期间更改它。请参阅this链接。登录后,将值存储在sharedPreference
中,并在注销后清除sharedPreference
答案 1 :(得分:0)
使用SharedPreference
存储简短信息。它是满足您要求的最佳套件。
SharedPreference
答案 2 :(得分:0)
登录时首次使用SharedPreferences中的值保存变量,然后每次登录时检查保存的值。当您注销时,您可以重新写入该值,以便当您再次启动应用程序时,因为保存的值不同,它将登录。
要将值保存到共享首选项,您需要执行以下操作: 以下是保存字符串变量:此处MyData是将存储值的File的名称。
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");
您可以根据自己的需要使用。
希望这会对你有所帮助。