前言:有多少用户愿意注册登陆,决定了一款产品的最大活跃度。

用户登陆注册系统分为两大类:

  自建用户系统:邮箱/手机号/用户名/二维码/人脸识别/指纹

  第三方授权用户系统:微信/微博/支付包/豆瓣/Facebook/QQ......

1 用户名+密码体系

单一的用户名+密码体系正在淘汰。一般会与邮箱或者手机号混合使用。

优势:有利于产品的初期传播

缺点:一旦用户忘记用户名或密码,那么此账号也就无法再次登陆

2 手机号注册+验证码体系

用于移动端产品注册,确认注册的手机号需要本人授权,防止输入手误或恶意注册。O2O/电商或需要支付的产品多采用此方法,可实现将验证身份与登录统一,一举两得。

优势

移动互联网最普及的登陆方式,受众面广,老一辈或许没有邮箱,但一定有手机号;

对于移动端产品,验证方便;

手机号记忆方便,对于用户名记忆和密码找回都非常方便;

手机号码是用户最稳定的一个身份ID,可以展开更多服务(如通过访问通讯录构建关系)

实时的短信推送

缺点

手机号码虽然是全球唯一的,但是是可以复用的。

手机号码泄露会引起非常多的麻烦,部分用户不愿意使用手机号注册

小体量的产品初期只使用手机号注册容易遭到用户本能抵制

3 邮箱+密码体系

最常用的注册方式,最早从WEB端开始盛行。所以有些产品为了考虑老用户的利益,不得不在移动端也保留这种登陆方式。

优势

唯一ID,除手机号之外最容易记忆的id

富媒体推送,可向用户推送丰富的内容的邮件

相对于手机,邮箱的私密性相对低,风险敏感性低

缺点

验证需要跳出,所以邮箱注册会存在体验与安全性的矛盾

移动端操作不够便利

4 第三方登陆体系

微信/微博/qq等拥有超大用户量

优势

不用输入密码,不用填写个人信息,用户体验优异

省去了用户管理账户的麻烦

省区了验证的步骤

通过第三方账户可已导入用户的一些相关的信息

快捷登录,无需输入用户名密码

缺点

对于产品本身限制过多

如果用户第三方账户被盗/丢失,会同时丢失其他平台的账户

无法获取用户信息

过度依赖第三方授权,一旦第三方授权取消,用户体系即将瘫痪

5 人脸识别/指纹识别体系

在一些相对强调安全性的产品中应用较多,目前只是辅助功能,但未来有可能成为主流登陆方式。

优势

可以说相当安全了

对硬件较好的设备登陆速度非常快

不需要担心忘掉ID或密码

缺点

对于硬件设备和使用环境有一定的要求

对于产品方推广支持不够,后期向分发信息还需要绑定手机号或者邮箱

 

APP注册&登陆 逻辑细节的更多相关文章

  1. App的登陆注册接口安全设计

    最近一APP产品,我担任的主要模块之一是后台登录注册模块的接口开发.基本完成,就说说并记录一下关于登录注册接口的一些东西,因为也涉及到接口的安全方面的问题. 1.先一般的app的登录注册接口安全设计上 ...

  2. 小程序&app 注册登录、绑定

    前段时间开发中的一款产品,有小程序和app:小程序直接微信登录,app使用手机号+验证码注册,手机号+验证码/密码登录. 用户使用其中一套账号密码即可正常使用,不强制要求完善另一套账号.为避免同一用户 ...

  3. SSM项目整合第一步 注册登陆实现

    SSM项目整合第一步  注册: 项目目录: 一.数据库建表: 源码: ; -- ---------------------------- -- Table structure for t_user - ...

  4. (十二)微信小程序实现登陆页面+登陆逻辑

    微信小程序实现登陆页面 实现上面两个页面 第一个页面 <view> <!-- 上侧部分 --> <view class="top-view"> ...

  5. SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 后端篇(五): 数据表设计、使用 jwt、redis、sms 工具类完善注册登录逻辑

    (1) 相关博文地址: SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 前端篇(一):搭建基本环境:https://www.cnblogs.com/l-y-h/p ...

  6. java 判断用户是PC端和还是APP端登陆

    java 判断用户是PC端和还是APP端登陆 public void getRequestHeader(HttpServletRequest request){ // 从浏览器获取请求头信息 Stri ...

  7. 1_python小程序之实现用户的注册登陆验证功能

    python小程序之实现用户的注册登陆验证功能 程序扼要简述:  一.程序流程:1.程序开始2.判断本地文件/数据库是否已存在用户信息,存在则跳转到登陆,否则跳转到注册,注册成功后后跳转到登陆3.判断 ...

  8. 2条最佳实践App疯狂增长逻辑

    2条最佳实践App疯狂增长逻辑 1.不断打造和强化产品的不可或缺属性 产品的核心价值是什么?对你的客户来言,为什么是你? 2.等待“阿哈时刻” 进入快速推广 用户使用产品眼前一亮的时刻,是用户真正发现 ...

  9. Django框架(二)-- 基本配置:app注册、模板配置、静态文件配置、数据库连接配置post和get

    一.app 在Django中,APP可以用以下类比 大学 --------------------项目 计算机学院------------app01 土木学院 ------------ app02 1 ...

随机推荐

  1. 导出csv文件数字会自动变科学计数法的解决方法

    其实这个问题跟用什么语言导出csv文件没有关系.Excel显示数字时,如果数字大于12位,它会自动转化为科学计数法:如果数字大于15位,它不仅用于科学技术费表示,还会只保留高15位,其他位都变0.解决 ...

  2. leetcode-algorithms-22 Generate Parentheses

    leetcode-algorithms-22 Generate Parentheses Given n pairs of parentheses, write a function to genera ...

  3. sqlserver 优化

    避免在索引列上使用计算 where子句中,如果索引列是函数的一部分,优化器将不使用索引而使用全表扫描.例如: (低效)select ... from [dept] where [sal]*12> ...

  4. oracle坏块处理记录

    1. 执行sql:select count(distinct id) from bw_fpzxx ,报错如下: ORA-01578: ORACLE 数据块损坏 (文件号 16, 块号 195428)O ...

  5. Leetcode 970. 强整数

    970. 强整数  显示英文描述 我的提交返回竞赛   用户通过次数223 用户尝试次数258 通过次数231 提交次数801 题目难度Easy 给定两个正整数 x 和 y,如果某一整数等于 x^i ...

  6. Yii2框架RESTful API教程

    前不久做一个项目,是用Yii2框架写一套RESTful风格的API,就去查了下<Yii 2.0 权威指南 >,发现上面写得比较简略.所以就在这里写一篇教程贴,希望帮助刚接触Yii2框架RE ...

  7. Github 指令上手 --- 分支

    指令环境 Git Shell 1.创建一个新分支 git branch branchName 2.切换到新创建的分支 git checkout branchName 1.2合起来使用指令(创建并切换) ...

  8. 操作远程RabbitMQ

    1.连接远程RabbitMQ 访问  http://your ip address:15672 通用帐号为guest,密码为guest:也可以使用自己创建的账号 注:your ip address只你 ...

  9. 平面最近点对模板[luogu P1429]

    %:pragma GCC optimize() #include<bits/stdc++.h> #define DB double #define m (((l)+(r))>> ...

  10. Linux修改用户密码有效期

    linux默认用户的密码是永不过期的,但是出于安全考虑在企业环境中一般会要求设置过期日期:但有时要求90天就过期,在这种严柯条件下我们有可能想给某个或某些用户开设后门,延长其密码有效期. 一.用户密码 ...