android中如何判断是否登录,保存登录信息

wy245218 2016-08-23 11:39:39
就是第一次进入app的话 是没有登录的。然后,如果用户点击某一项功能就要看是不是已登录状态,没有登录的话就提示要先登录,登陆了之后才能查看app的功能,然后登录之后就保存登录信息,退出了在下一次进app就不用登录了。大神指导一下,详细一点。
...全文
2657 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_38669639 2019-06-02
  • 打赏
  • 举报
回复
https://blog.csdn.net/juer2017/article/details/78636100
UESTC少尉 2016-08-25
  • 打赏
  • 举报
回复
有几种方法,怎么使用网上找一下很多的: 1、sharedPreference存改状态,进行判断 2、sqlite数据库里面存改状态,同上面的方法类似 3、跟后台server端交互进行判断
ruinworld 2016-08-25
  • 打赏
  • 举报
回复
根据你的需求需要三步: 1.第一步就是你创建个class类继承自Application,作为你app的整个应用层,在里面写一个或几个变量,根据你的需求写,如果你的用户登录状态有token,你就写一个变量保存token,在判断是否登录的时候直接判断token是否为空就行,如果没有你要写一个能判断用户登录状态的参数的变量,ok,这是判断用户是否登录的 2.第二步就是上面同志们所说的保存登录状态的,你就保存在SharedPreference里面或者你保存在java提供的Peroperty里面,都是键值对的存储,把一个或几个用来判断用户登录状态的参数写进去,只要你的app不卸载和用户不在设置里面清楚你的app的数据他会一直存在,ok,这就是实现保存用户登录状态的 3.第三步就是用户在打开你的app的时候,首先执行第一步的继承与application的类,你在这个类里面的oncreate方法中初始化用户登录信息,具体就是你从SharedPreference中取出你的用户信息(一般会保存用户对象的json字符串信息),并将判断用户登录状态的参数赋值给该类里面的你定义的变量,ok,这就是实现每次用户打开app,只要是没登录你的第一步的变量就是空的,登陆后变量就是有值得,用户的登录状态也就ok了
一不小心_ 2016-08-24
  • 打赏
  • 举报
回复
用sharedprefrence保存一个值,默认是false,如果登录了就是true,登出就再改为true,通过这个值判断是否登录
碼农李泽斌 2016-08-24
  • 打赏
  • 举报
回复
进入启动页之后先获取存储的内容,如果字段不存在或者字段存在但是是未登录状态值,则跳转到登录界面,如果字段存在并且是已登录状态值,则跳转到功能界面。
给你一个SPUtil工具类
    private static String SHAREDPREFERENCE_NAME = "sp_data";

public static void put(Context context, String key, Object object) {
SharedPreferences sp = context.getSharedPreferences(SHAREDPREFERENCE_NAME, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sp.edit();
if (object instanceof String) {
editor.putString(key, (String) object);
} else if (object instanceof Integer) {
editor.putInt(key, (Integer) object);
} else if (object instanceof Boolean) {
editor.putBoolean(key, (Boolean) object);
} else {
editor.putString(key, object.toString());
}
editor.commit();
}

public static Object get(Context context, String key, Object defaultObject) {
SharedPreferences sp = context.getSharedPreferences(SHAREDPREFERENCE_NAME, Context.MODE_PRIVATE);
if (defaultObject instanceof String) {
return sp.getString(key, (String) defaultObject);
} else if (defaultObject instanceof Integer) {
return sp.getInt(key, (Integer) defaultObject);
} else if (defaultObject instanceof Boolean) {
return sp.getBoolean(key, (Boolean) defaultObject);
} else if (defaultObject instanceof Float) {
return sp.getFloat(key, (Float) defaultObject);
} else if (defaultObject instanceof Long) {
return sp.getLong(key, (Long) defaultObject);
}
return null;
}
ink_s 2016-08-23
  • 打赏
  • 举报
回复
sp 百度SP
网络咖啡 2016-08-23
  • 打赏
  • 举报
回复
程序里面做一个变量,记录登录状态,登录成功时设置该变量是true
wy245218 2016-08-23
  • 打赏
  • 举报
回复
各位大神,还不是太懂,能不能给个推荐的列子看一看。谢谢了。
碼农李泽斌 2016-08-23
  • 打赏
  • 举报
回复
用sharedPreference啊,Android 应用的的一些设置、登录状态、用户信息等一般都会存在sharedpreference中,它会以键值对的形式存储在手机中
内容概要:本文针对无刷直流电机驱动的电子机械制动(EMB)执行器,建立了考虑Stribeck摩擦特性的非线性耦合动力学模型,并在Simulink环境完成了系统级仿真分析。研究综合集成了电机动力学、齿轮传动机构与制动执行机构的动力学特性,构建了高保真的机电一体化系统模型。重点引入Stribeck摩擦模型以精确描述低速工况下执行器内部存在的静摩擦、粘滞摩擦与库仑摩擦之间的过渡行为,有效提升了系统在启停、反向运动等瞬态过程的动态响应仿真精度。通过多工况仿真验证了模型的有效性,能够准确反映摩擦引起的爬行、滞后与定位误差等非线性现象,为EMB系统的高性能控制算法设计(如摩擦补偿、滑模控制)与结构优化提供了高可信度的仿真平台。; 适合人群:从事汽车电子制动系统、电机驱动控制、机电系统建模与仿真研究的研究生、科研人员及工程技术人员,需具备扎实的机械动力学、自动控制理论基础和MATLAB/Simulink仿真能力。; 使用场景及目标:①用于高精度电子机械制动系统的设计验证与性能预测;②为消除摩擦非线性影响的先进控制策略(如自适应控制、智能控制)提供精确的被控对象模型;③深入探究Stribeck摩擦等非线性因素对系统动态性能(如响应延迟、稳态误差)的作用机理; 阅读建议:读者应结合提供的Simulink模型文件,深入剖析Stribeck摩擦模块的数学实现与参数辨识方法,建议通过改变输入指令(如阶跃、正弦)和负载条件进行对比仿真,以直观理解非线性摩擦对系统动态特性的影响。

80,488

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧