手机app注册登录服务器客户端流程图

近期的项目中还在不断地完善客户端和服务器,并且今天用到了android的id这样的一个属性,下面将具体来说我是怎样使用的


一、现象

其实在我们的手机app中使用的非常广泛,相信大家一定都记得当注册登陆某个软件之后,再次登陆时不需要输入密码,就可以直接进入主界面这项功能,这项功能看着很容易,其实还是包含了一些复杂的内容,其中就包括需要使用android的id


二、实现过程

在我们打开app的过程中其实客户端和服务器做了一系列的交互,下面我将一一道破

我将采用最简单的数据库来说明整个过程,数据库共包括_id    password    first_login   android_id共四个属性,

1、_id就是注册的用户名

2、password就是登陆密码

3、first_login就是判断是否第一次登陆,如果第一次登陆需要进入用户指导

4、android_id是用来记录手机唯一的id号的 

整个数据库的建表语句如下

create SCHEMA IF NOT EXISTS `masterDatabase`;
use `masterDatabase`;
CREATE TABLE IF NOT EXISTS `userData` (
  `_id` varchar(30) NOT NULL ,
  `password` varchar(32) NOT NULL ,
  `first_login` boolean NOT NULL,
  `android_id` varchar(30),
  PRIMARY KEY (`_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

第一次安装软件的时候我们会进入登陆界面,由于没有注册过然后转向注册界面,在这里要解释一下,其实看似波澜不惊只是跳转了activity,但是实际已经发生了客户端和服务器的交互。

在刚刚进入登陆界面还没有显示的时候,客户端就给服务器发送判断是否登陆过的信息,然后服务器返回一个没有登录的信息,然后才显示的登陆界面,而判断是否登陆过的信息就是要把本机的android的ID号发到服务器上,在数据库中找android_id中是否存在该ID号,如果存在(注意最多只能有一个该ID号),说明该账号注册过,那么不进入登录界面而进入正式的界面,否则进入登录界面。

在注册后登陆的时候也发生了客户端和服务器的交互,android端将自己的ID号发给服务器,服务器就把这个号给注册了也就是相应的_id的账号的元组中有了android_id的值

  

整个过程说起来比较复杂而且不直观,下面有个流程图供读者参考



我使用的获取android设备ID号是用以下语句

  • String androidId = Secure.getString(getContext().getContentResolver(),Secure.ANDROID_ID);

整个过程是我结合工程写的,不方便放上源代码,希望读者能够自己通过socket变成一步步实现,这样也比直接读代码印象要更深刻


静坐常思己过,闲谈莫论人非


  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值