近期的项目中还在不断地完善客户端和服务器,并且今天用到了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变成一步步实现,这样也比直接读代码印象要更深刻
静坐常思己过,闲谈莫论人非

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

  1. 手机app项目云服务器,手机app接入云服务器

    手机app接入云服务器 内容精选 换一换 SAP NetWeaver实例运行在弹性云服务器上.需要根据部署场景,创建一台或多台弹性云服务器.请参见方案介绍和数据规划章节,确定弹性云服务器数量及相关规划 ...

  2. 云闪付持卡人认证信息失败_云闪付app注册登录常见问答

    云闪付app注册登录常见问答 1.如何注册成为云闪付App用户? 持卡人可通过以下方式注册成为云闪付APP用户: (1)通过持卡人服务网站(www.95516.com): (2)通过云闪付App. 通 ...

  3. 手机app 服务器 网页同步,手机app接入云服务器

    手机app接入云服务器 内容精选 换一换 通过内网连接云手机实例时,需要在租户VPC中创建一台弹性云服务器,作为连接云手机的跳板机器.若创建云手机服务器时未使用自定义网络,还需在云手机租户的VPC和服 ...

  4. AXURE手机版注册登录原型(下载+教学)

    今天给大家分享一套APP注册/登录界面模板,其中包括本机登录页面,短信验证登录页面,密码登录页面,人脸登录页面,微博.微信.QQ.支付宝登录页面,注册页面,用户协议和隐私条款.该原型使用简单,交互完善 ...

  5. APP注册登录那点事

    转载地址:http://www.woshipm.com/pd/206667.html?utm_source=tuicool APP注册登录那点事 2015/09/21 阅读 3.2万  评论 6 收藏 ...

  6. Axure教程:一个通用的app注册/登录页

    今天给大家分享一套APP注册/登录界面模板,其中包括本机登录页面,短信验证登录页面,密码登录页面,人脸登录页面,微博.微信.QQ.支付宝登录页面,注册页面,用户协议和隐私条款.该原型使用简单,交互完善 ...

  7. 手机 APP 无法连接服务器,DNS被篡改被劫持?

    通常,在开发手机 APP 的时候,与服务器的连接都是通过域名来访问服务器,然而就会遇到一些不法分子对 DNS进行劫持,进行篡改,导致无法连接服务器,或者返回期望之外的结果,用户流失甚至财产损失. HT ...

  8. 产品策划三:App注册登录系统策划方案

    注册登录系统,是app最基础的系统模块之一.账号id是用户的唯一标识,基于这个账号记录用户行为,为用户提供各种各样的个性化服务.没有这个账号系统,后面的一切都是空话.当然,如果你是做一个纯粹的工具,比 ...

  9. 产品策划四:App注册登录系统策划方案

    注册登录系统 注册登录系统,是app最基础的系统模块之一.账号id是用户的唯一标识,基于这个账号记录用户行为,为用户提供各种各样的个性化服务.没有这个账号系统,后面的一切都是空话.当然,如果你是做一个 ...

  10. 设计灵感|APP注册登录页面的设计形式

    注册登录页面是一个APP的门面,它的好坏与否直接影响着APP的用户数和用户体验. 作为一个设计师,其实经常时不时就会去下载一些APP,体验的时候经常被一些不尽人意的注 册登录页面弄的想怒摔手机,最终都 ...

最新文章

  1. java Proxy(代理机制)
  2. Exynos 4412启动过程(群聊笔记记录)
  3. 毕业课题之------------图像的形态学滤波
  4. CSS之flex需要知道的一切(一)
  5. javaweb解决编码问题_学习编码? 首先,学会解决问题。
  6. 原 jQuery基础修炼圣典—DOM篇
  7. 计算机设置重启时间表,电脑定时开关和重启方法
  8. python 文件和目录操作题库
  9. 黑苹果怎么进recovery_黑苹果怎么自定义Clover GUI启动选项 黑苹果修复Clover GUI启动选项教程...
  10. 过保金士顿SA400S37固态硬盘固件通病,不保存盘内数据如何救活?
  11. 拼音加加 V4.0B 正式版
  12. 结构光三维重建(二)线结构光三维重建
  13. HTML5期末大作业:基于HTML+CSS+JavaScript仿蘑菇街购物商城设计毕业论文源码
  14. Rust-WebAssembly 开发者布道师招聘
  15. 2020python二级考试时间_2020年计算机二级考试时间及考试科目
  16. WINUSB设备的inf文档的编写
  17. 玉柴spn码故障对照表_玉柴ECI故障码表
  18. 微软azure DNS服务器,什么是 Azure 专用 DNS?
  19. 高级加密标准 (AES) 和安全断言标记语言 (SAML) 的 Web 安全
  20. 知乎不能改用户名吗_不知道不能随便改名字吗

热门文章

  1. 小红书 标签 HTML5,牛宝-手机客户端
  2. C++ 读取和写入txt文件
  3. node - 收藏集 - 掘金
  4. win10共享打印机搜索不到计算机,w10共享打印机搜索不到如何处理
  5. 第三篇:知其然,知其所以然-USB音频设备的开发过程
  6. 【Elasticsearch源码】 更新性能分析
  7. python绘制小狗_SAI教程:绘画小狗手绘板教程
  8. rabbitmq 消息确认机制ACK
  9. win10 企业版激活
  10. 我的理想是学计算机,我的理想作文(精选10篇)