利用Application对象存储登陆用户信息

Application对象很是适合用于存储一些与整个应用相关数据,例如应用版本,应用登陆帐户,数据缓存等。
如activity的切换是很频繁的,差很少能够和一个网站中不一样网页之间的切换同样,那么不一样的activity之间须要存储公共信息(如只有一个当前登陆用户)以及数据传递等。
利用Application对象存储登陆用户信息的方法,能够很方便的不一样activity之间获取登陆用户信息。 java


首先,新建一个java类继承Application类:BaseApplication.java android

import android.app.Application; 缓存

public class BaseApplication extends Application {
 
    private String login_user_name = "";
   
    public String getLoginUserName() {
        return login_user_name;   
    } 
    public void setLoginUserName(String login_user_name) {
        this.login_user_name = login_user_name;   
    }  app

} ide

而后,在AndroidManifest.xml中指定应用的application对象 网站

......
<application
        android:name=".BaseApplication"
...... this


最后,在activity中使用application对象, 使用Activity的getApplication()方法。 spa

import android.os.Bundle;
import android.app.Activity; xml

public class MainActivity extends Activity {
 
 private BaseApplication mApplication;
 
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main); 对象

  // 获取整个应用的Application对象
  // 在不一样的Activity中获取的对象是同一个
  mApplication = (BaseApplication) getApplication();
 
 }
 
 /**
  * 通常只有在登陆界面中设置登陆用户信息,在其余的Activity中
  * 只要经过Application对象就能够获取登陆用户信息
  */

  ......
  // 将登陆用户信息保存到Application对象中
  mApplication.setLoginUserName("登陆名");

  //获取登陆名 
  mApplication.getLoginUserName();

}

相关文章
相关标签/搜索