注册,登陆于密码找回。这是这次记录的主要内容。

首先,我们来看类图:

因为一直在改,所以与第二篇介绍项目框架时的图会有一些不一样。

代码都是非常简单的。

由于在注册和登陆这里,需要弹出一些对话框告诉用户出错的地方,后来想到后面的程序中也可能会用到,所以就重构了一下,放到了AnyTimeActivity类中。

在AnyTimeActivity类中,有一个userId的公开字段,这个应该写成一个getUserId的方法,后续会改掉。这个是用来判断用户是否已经登录,如果已经登录,那么就会直接跳转到主页面,而不是让用户停留在登陆的页面再次登录。

注意观察可以发现,我并没有一些方法来进行本地存储。因为在使用AVOS提供的类库,已经帮我实现了这些方法,我所做的只是调用而已。

详细的内容大家可以到AVOS的官网查看。

同样,判断用户名是否重复、判断邮箱是否重复、发送密码找回邮件、用户注册、用户登录等,AVOS自带的后台系统均已经帮我实现了,这样节省了我很多时间。

下面是界面截图:

登录

注册

找回密码

找回密码时,会有一封邮件发送到我们注册时的邮箱地址,之后,打开邮箱,点击链接,会出现如下的页面。

此时,证明我们找回密码可以正常工作。

Anytime项目开发记录2的更多相关文章

  1. Anytime项目开发记录0

    Anytime,中文名:我很忙. 开发者:孤独的猫咪神. 这个项目会持续更新,直到我决定不再维护这个APP. 2014年3月10日:近日有事,暂时断更.希望可以会尽快完事. 2014年3月27日:很抱 ...

  2. Anytime项目开发记录4

    做事情列表,我在程序中命名为“正在做”. 这是一个Fragment,应用的主页面,由一个MainActivity加上DoingListFragment和PersonFragment组成.PersonF ...

  3. Anytime项目开发记录3

    应用想要做的好,反馈必然少不了~哈哈~ 用户的反馈.意见.建议,甚至是谩骂,都是对项目的反馈. 如果一个应用没有听取用户的反馈,那么应用会离着用户越来越远.懂得用户要什么是一回事,听得到用户的反馈,则 ...

  4. Anytime项目开发记录1

    关于Android APP 应用设计,我并没有接受过系统的学习. 下面,是按照我一直以来的方法来进行编辑. 由于在程序开始之前并没有画类图,这里简单的讲述一下程序是如何设计的. 自己实现了一个Appl ...

  5. TMS320F28335项目开发记录1_CCS的使用介绍

    CCS使用介绍 一.前言 本系列文章记录本人实际项目开发时对ti的DSP28335,以及CCS开发环境等的学习与记录,相对于2812来说,28335的资料还是比較少的,只是原理是相通的,28335说白 ...

  6. Unity3D Demo项目开发记录

    前言 经过一段时间的学习与实际开发,unity3D也勉强算是强行入门了,正所谓好记性不如烂笔头,更何况本人并非专业从事unity3D开发,会一点C#但也并不熟悉,为了避免后期遗忘,因此特意整理了一个D ...

  7. TMS320F28335项目开发记录5_28335之CCS编程基础

    CCS开发环境已经为我们封装好了很多片内外设寄存器的结构体,我们仅仅须要包括对应的官方的头文件就能够使用了,那么它的内部详细是怎样实现的呢? 以下来一个典型的样例: 1.使用结构体和联合体 A.用st ...

  8. 用vue前后端分离项目开发记录

    一:软件安装 1.1 检测node 是否安装 1.2 安装淘宝镜像 cnpm 1.3 安装vue-cli 1.4 检查是否安装vue-cli脚手架成功 1.5安装webpack 模块管理工具 二:创建 ...

  9. TMS320F28335项目开发记录6_28335之cmd文件具体解释

    1.CMD文件的作用 CMD文件的作用就像仓库的货物摆放记录一样,为程序代码和数据分配指定的空间. 2.C语言生成的段 C语言生成的段大致分为两大类:初始化和未初始化,已初始化的段含有真正的指令和数据 ...

随机推荐

  1. POJ 1632 Vase collection【状态压缩+搜索】

    题目传送门:http://poj.org/problem?id=1632 Vase collection Time Limit: 1000MS   Memory Limit: 10000K Total ...

  2. jquery插件layer

    //信息框-例1 layer.alert('见到你真的很高兴', {icon: 6}); //信息框-例2 layer.confirm('你确定你很帅么?', {icon: 3}, function( ...

  3. python-time、datetimme模块

    time模块 1.time.time():返回当前时间的时间戳. 打印时间戳: >>> import time >>> time.time() 1530329387 ...

  4. Entity Framework 四

    实体框架支持三种类型的查询:1)LINQ to Entities,2)Entity SQL,3)Native SQL LINQ方法语法: LINQ查询语法: 实体SQL: 这种可以简单的了解,不必深入 ...

  5. js关于密码框强弱度的提示

    三种密码强度的正则表达式: 较弱:全是数字或全是字母 6-16个字符:/^[0-9]{6,16}$|^[a-zA-Z]{6,16}$/; 中级:数字.26个英文字母 6-16个字符: /^[A-Za- ...

  6. java8新特性学习2

    六.Stream API Java8中有两大最为重要的改变.第一个是 Lambda 表达式:另外一个则是 Stream API(java.util.stream.*).Stream 是 Java8 中 ...

  7. ios断点续传:NSURLSession和NSURLSessionDataTask实现

    苹果提供的NSURLSessionDownloadTask虽然能实现断点续传,但是有些情况是无法处理的,比如程序强制退出或没有调用 cancelByProducingResumeData取消方法,这时 ...

  8. 对AFNetworking的二次封装

    HttpTool.h #import <Foundation/Foundation.h> #import <UIKit/UIKit.h> typedef void(^HttpS ...

  9. iOS之一些实用的Demo

    图像浏览及处理 FLAnimatedImage - gif播放处理的工具. CLImageEditor - 超强的图片编辑库,快速帮你实现旋转,防缩,滤镜等等一系列麻烦的事情. ios-image-f ...

  10. WebGL学习笔记(4)

    本篇笔记加强了上篇笔记示例代码的程序,实现了使用nodejs-websocket来广播每个玩家的坐标数据并在同一个世界模型中进行多人在线交互. websocket服务端: 安装nodejs与npm,创 ...