当前位置:首页 > 技术知识 > 正文内容

作为初级产品汪,我是这么理解APP登录注册功能的

maynowei10个月前 (08-02)技术知识198

目前大多数产品都有登录注册功能,有的有自身平台账号体系,有的依靠大平台账号体系授权登录。接下来我跟大家分享一下我对登录注册功能的理解。

登录注册的根本意义

登录注册,众所周知,就是创建的ID,然后访问(操作)产品的高级功能。其实呢,用官方的语言来说(我认为的官方,大神勿喷),登录注册就是一个授权的过程,用户通过授权后,使用对应的证件(ID)去执行游客(未登录用户)不被允许做的事情。

举个栗子,我上高中的时候,在食堂吃饭是不允许现金支付的,只能通过刷饭卡,那么饭卡则是学生的证件(ID),学生在办理饭卡时就是学校给学生授权的过程。

设计登录注册功能的目的

现在说说我对登录注册设计的理解

1、用户高效获取信息

例如资讯类产品,用户登录后可以个性化定制喜欢的资讯。

2、便于平台通知推送

平台日常的活动或其他运营消息,可以通过用户信息(不限于手机号、邮箱等)快速通知到用户。

3、树立形象

对平台来说,用户的注册登录是对平台的信任,认可平台的品牌。

对用户来说,在该平台上,有我的一块区域,我是“圈里人”,不是“门外汉”。

谈谈登录注册的设计和思考

此处简单说一下有登录注册功能的应用,必须登录才能使用的应用通常有较强社交属性,如微信,QQ,映客直播等;不用登录可以使用部分功能,但特定功能(高级功能)必须登录的应用通常是电商购物类、资讯媒体类、生活类,如淘宝天猫,微博,去哪儿等。

另外无须登录即可使用的应用,通常是工具类和部分单机游戏类,如天气,龙之丘等。

从账号体系来说,分为以下两类:

1、产品自身平台账号系统

国内最常见的是手机号注册(手机端常用),其次是邮箱注册(PC端常用),再次是用户名注册(目前用得较少),这里主要讨论手机端,也就是手机号注册。

注册

现在大家习惯的使用流程是:输入手机号à获取验证码60sà输入验证码并验证成功à设置密码à注册成功。那这个过程中我们则需要注意每个操作环节的反馈:

  • A手机号输入框失去焦点时,检查手机号格式是否合法
  • B验证码输入框失去焦点时,验证是否正确,若不正确是否能重新获取
  • C密码设置,最好是默认明文显示,也可切换不显示

登录

登录流程,用户端显得更简单,输入手机号和对应密码即可登录。

这里要注意的是:

  • A设置文本输入框的格式,如手机号输入款设置为number格式,这样手机输入框获取焦点后悔自动调出数字键盘
  • B允许明文显示密码,默认不显示,用户自己切换
  • C用户登录后,要一直记住用户,保持用户登录状态。除了特殊状态(用户卸载了应用、退出登录等)
  • D一定要有“忘记密码”的选项,让用户在忘记密码时提供应急通道。

2、第三方登录

第三方登录是目前很普遍的登录方案了(其实是第三方账号注册,应用通过调用第三方的基础数据在自身平台建立对应的用户数据库,只是用户感知度较低罢了),优点不用说,肯定就是方便。但这里提一下建议:

  • 用户使用第三方登录后,尽量引导用户完善个人信息,便于建立自身账户体系
  • 涉及金钱或者比较私密的功能操作,必须让用户完成对应的信息绑定

登录注册原型设计

首先,梳理一下流程。登录注册一般包含注册、登录和忘记密码三个模块,常规流程如下:

接下来按照流程画出原型,再添加对应的交互动作,这里不详述,大致预览一下效果吧,文末有原型预览链接。

在完成该原型的时候,难点在于:

随机验证码的生成,需要用到随机函数random,Axure中的随机函数random只随机0~1之间的数,这里我们设置一个全局变量ran,那么我们常见的六位验证码则是把随机数放大1000000倍,再截取整数部分(截取使用的函数是substring),最后把验证码部件的文字等于计算出来的数字,那就是:

用户数据匹配,将要登录的账号和用户数据库匹配,若有匹配数据则按照正常流程走,若用户数据中无匹配数据,那么提示该号码未注册。(这里演示的用户数据只有一条,若要更多数据,则需要配合中继器来完成。)

以上是我对登录注册的理解,欢迎批评和指导。

最后体验一下原型,有疑问请留言。

作者:木目,微信号lcxjaye。另外,作者一年产品经验,目前在求职,若有产品相关的坑,请让作者去填吧。

本文由 @木目 原创发布于人人都是产品经理。未经许可,禁止转载。

相关文章

那些技术—Listview的性能提高篇(listview提高效率)

ListView优化一直是一个老生常谈的问题,不管是面试还是平常的开发中,ListView永远不会被忽略掉,那么这篇文章我们来看看如何最大化的优化ListView的性能。 · 1.在adapter中的...

CPU「离奇」飙到 100%!开发者挖出 Linux 内核 16 年老 Bug:这么多年竟无人发现?

【CSDN 编者按】每一次对旧设备的升级都仿佛是一场跨越时代的冒险。本文作者致力于将基于 PXA166 的 Chumby 8 设备从 Linux 2.6.28 版本升级到现代 6.x 版本,然而,在看...

Linux C++实现多线程同步的四种方式(超级详细)

背景问题:在特定的应用场景下,多线程不进行同步会造成什么问题?通过多线程模拟多窗口售票为例:#include <iostream>#include<pthread.h>#inc...

Navicat Premium 连接 Oracle 数据库

Navicat Premium是一个可多重连接的数据库管理工具,它可让你以单一程序同時连接到 MySQL、SQLite、Oracle 及 PostgreSQL 数据库,让管理不同类型的数据库更加方便。...

Oracle数据库云服务系列新增前所未有的企业级功能

新推出的关键任务型功能包括:实现容错可用性和按需可扩展性的集群;零数据丢失灾难恢复;Oracle数据库Exadata云服务。甲骨文还宣布推出一项最新免费数据库云服务,数据库管理员和开发人员通过该服务可...

Oracle 11g安装教程完整版(oracle 11g 安装教程)

由于工作需要,将安装的经验分享给大家。第一步:首先准备安装文件包:Oralce 11.2.0.4 64bit和plsqldev1405x64如图所示:第二步:将2个文件解压到同一个目录,如图所示:第三...