• 开发日志17


    今天完成了注册登录案例

    利用短信登录,并且做个标记存放在sharedpreference中,然后下次再进入软件时,会利用它来判断是否已经登录,

    若登录,则直接进入首页,若没有登录跳转到登录页面

    用时:7个多小时

    效果:

              

    遇到的问题:

    1.短信验证实现之后,我想把手机号和密码添加到SQLLite数据库中以便判断,但是当我在用DBOpenHelper时,发现我添加不到里边

    我当时的猜想就是,是不是我短信验证和存储密码不能一起使用,短信验证功能会报错。后来我暂时把存储到数据库的功能注释了,短信验证就可以了

    但是这也不能吧,我就不信,再上网搜,没找到,那就是没有这块的问题呗。

    是我自己写错了肯定,我就开始找错误,从onCreate函数开始,就是在这发现了错误

    我少了这句:mDBOpenHelper = new DBOpenHelper(this); 来获取这个DBOpenHelper的类

    这可是个致命错误啊,当我加上之后,再打开添加数据库功能,结果就可以了

    到这时,经历了一晚上的折腾,终于找到了问题所在

    2.如何能够实现用户第二次登录,能够不再用登录,直接进入主页面(除非用户退出登录,这时才回跳到登录页)

    我上网查了一下,大致结果如下:

    根据你的需求需要三步:

    (1).第一步就是你创建个class类继承自Application,作为你app的整个应用层,在里面写一个或几个变量,根据你的需求写,如果你的用户登录状态有token,

    你就写一个变量保存token,在判断是否登录的时候直接判断token是否为空就行,如果没有你要写一个能判断用户登录状态的参数的变量,ok,这是判断用户是否登录的

    (2).第二步就是上面同志们所说的保存登录状态的,你就保存在SharedPreference里面或者你保存在java提供的Peroperty里面,都是键值对的存储,把一个或几个用来判断用户登录状态的参数写进去,

    只要你的app不卸载和用户不在设置里面清楚你的app的数据他会一直存在,ok,这就是实现保存用户登录状态的

    (3).第三步就是用户在打开你的app的时候,首先执行第一步的继承与application的类,你在这个类里面的oncreate方法中初始化用户登录信息,具体就是你从SharedPreference中取出你的用户信息

    (一般会保存用户对象的json字符串信息),并将判断用户登录状态的参数赋值给该类里面的你定义的变量,

    ok,这就是实现每次用户打开app,只要是没登录你的第一步的变量就是空的,登陆后变量就是有值得,用户的登录状态也就ok了

    主要的实现步骤:在下一篇

  • 相关阅读:
    将博客搬至CSDN
    HDU1175 + HDU1728+BFS转弯
    HDU1401 BFS
    HDU1401 双广BFS
    分布式一致性
    GFS架构分析
    云计算资源分享与下载
    mysql导入导出数据方法
    缓存设计的一些思考
    HBase性能优化方法总结
  • 原文地址:https://www.cnblogs.com/022414ls/p/13527152.html
Copyright © 2020-2023  润新知