我已将Google sign in sample application与我的应用程序主要活动集成在一起。
我的导航标题中有一个按钮来启动登录活动。 当我使用我的Google帐户登录时,它会将我的姓名和电子邮件ID提取到导航标题中。
现在的问题是,如果我退出这个应用程序,我需要每次都重新登录。如何保存登录详细信息。
我已经阅读了多篇关于共享偏好的文章,但共享偏好对我不起作用。
以下是我尝试过的代码段之一。我在.menu-item {
padding: 10px;
font-family: arial;
}
中呼叫<ul class="unclick--menuitems">
<li class="menu-item"><a href="//google.com">About</a></li>
<li class="menu-item"><a href="//google.com">Projects</a></li>
<li class="menu-item"><a href="//google.com">Contact</a></li>
</ul>
,在storeUserDetails()
呼叫onBackPressed
。
getUserDetails()
也试过这个教程 https://www.tutorialspoint.com/android/android_shared_preferences.htm
答案 0 :(得分:0)
//First instantiate sharedpreferences
SharedPreferences sharedpreferences;
sharedpreferences=getSharedPreferences(MyPREFERENCES,Context.MODE_PRIVATE);
private String name,phone,email;
//OnPause method to save shared preferences when activity is destroyed
@Override
public void onPause() {
super.onPause(); // Always call the superclass method first
SharedPreferences.Editor editor = sharedpreferences.edit();
editor.putString(Name, name);
editor.putString(Phone, phone);
editor.putString(Email, email);
editor.commit();
}
//OnResume method used to retrieve sharedpreferences
@Override
public void onResume() {
super.onResume(); // Always call the superclass method first
SharedPreferences prefs = this.getSharedPreferences("MyPREFERENCES", Context.MODE_PRIVATE);
name = prefs.getString("Name","");
phone = prefs.getString("Phone","");
email = prefs.getString("Email","");
}
另外,为了处理登录问题,您可以使用启动器活动和共享优先选项来检查Name是否为null,如果不是则导航到mainactivity,如果是,则导航到登录,然后登录注销功能请确保清除共享偏好。