Xamarin.android应用重新启动后返回登录页面



我在重新推出Android应用程序中面临问题,i; e

当我运行应用程序的第一个活动是登录时,登录时将导航到主页。

假设按下主页按钮并从App-Drawer重新启动应用程序,它将再次从登录页面开始。但是,如果从任务管理器中的运行列表中将其打开,则将随登录页面提供。如何解决此问题,请帮助我。

将此代码添加到您的 login.java OnCreate

if (!TextUtils.isEmpty(SessionManager.isLogIn(Login.this))) {
        SessionManager.user_id = SessionManager.isLogIn(Login.this);
        SP = getSharedPreferences(PREFS_NAME, MODE_PRIVATE);
        SessionManager.user_name = SP.getString("user_name", "");
        SessionManager.user_name = SP.getString("user_pass", "");
        SessionManager.uId = SP.getString("id", "");
        Intent intent = new Intent(Login.this, HomePage.class);
        startActivity(intent);
        finish();
    }

将Java类名称为 SessionManager.java

public class SessionManager {
    static Context context;
    public static String PREFS_NAME = "settings";
    static SharedPreferences preferences;
    public static String user_id ="";
    public static String user_name ="";
    public static String user_pass ="";
    public static boolean check = true;

  @Override
  public void onCreate() {
      super.onCreate();
      context = getApplicationContext();
      mInstance = this;
  }

  public static String isLogIn(Context context) {
      preferences = context.getSharedPreferences(PREFS_NAME, MODE_PRIVATE);
      user_name = preferences.getString("user_name", "");
      user_pass = preferences.getString("user_pass", "");
      return user_id = preferences.getString("user_id", "");
  }
  public boolean logoutUser(Context context) {
      preferences = context.getSharedPreferences(PREFS_NAME, MODE_PRIVATE);

      return true;
  }
}

login.java

LOGINonClick中添加此代码
    SP = getSharedPreferences(PREFS_NAME, MODE_PRIVATE);
        Editor editit = SP.edit();
        editit.putString("user_id", user_id);
        editit.putString("user_name", etUsername.getText().toString());
        editit.putString("user_pass", etPassword.getText().toString());
        editit.commit();
        SessionManager.user_id = user_id;
        SessionManager.user_name = etUsername.getText().toString());
        SessionManager.user_pass = etPassword.getText().toString());

login.java

中制作此 Global
    SharedPreferences SP;

最新更新