基于Bmob的在线群聊之功能概述和注册登录功能
2017-07-03 21:27
330 查看
注意,该平台在学生阶段的使用免费功能是够用了的,所以不用担心价格。
2.可以通过用户名或者邮箱密码来进行登录,如果登录过一次后,就可以实现像QQ一样不用每次都需要输入密码登录了,可以直接进入应用。
3.登录成功后可以选择已有群组进行聊天。
4.实现没有联网时可以查看聊天记录。
2.登录效果
3.登录后的群聊页面效果
4.聊天效果图
注意:要使用文件发送也就是图片的话,就要下载新的demo,因为旧版不支持的,之前我就因为这样迟迟没有找到原因,使用新版的还要使用Android Studio开发工具,eclipse是不支持的。如果你不要求发送文件可以使用旧版的。这里我是使用新版本的。
备注:这里就不详细介绍怎么做准备工作了,官网的文档也十分详细。
这是旧版的Bmob的讲解视频密码:q5po,需要的可以拿走,我也是网上找到的。我认为看懂这个然后就慢慢摸着门路的。
如果你需要的用户的数据只是用户名,邮箱和密码,那就可以直接进行下一步操作了,因为Bomb默认的User_表已经有那几列了。
1.先说只要用户名,邮箱和密码的注册方法
这里,如果有发邮件的,请到你的应用后台进行设置邮箱的信息。
注册成功后,你的后台的_User表会有你刚刚录入的信息。
2.要实现User添加其他列的用户表的实现
要实现自己的用户表,我们只需要把上面的User改为myUser就可以了。
第一次登录的时候要有邮箱验证的代码如下:
只需把if(e == null)里面的内容改为以下的代码即可
如果有登录过的用户,就不用登录了
到这里,就可以完成了注册和登录了。
一、项目实现的功能概述
1.首先要通过用户名邮箱和密码来进行注册,来获取进入应用的权限。可以设置只有通过邮箱激活才可以进行登录。2.可以通过用户名或者邮箱密码来进行登录,如果登录过一次后,就可以实现像QQ一样不用每次都需要输入密码登录了,可以直接进入应用。
3.登录成功后可以选择已有群组进行聊天。
4.实现没有联网时可以查看聊天记录。
二、项目效果图(页面设计有点丑,别介意哈)
1.注册效果2.登录效果
3.登录后的群聊页面效果
4.聊天效果图
三、准备工作
请到Bmob官网进行注册等一系列工作,然后查看快速开发的步骤,将相应的SDK下载好并复制到相应的工程位置。注意:要使用文件发送也就是图片的话,就要下载新的demo,因为旧版不支持的,之前我就因为这样迟迟没有找到原因,使用新版的还要使用Android Studio开发工具,eclipse是不支持的。如果你不要求发送文件可以使用旧版的。这里我是使用新版本的。
备注:这里就不详细介绍怎么做准备工作了,官网的文档也十分详细。
这是旧版的Bmob的讲解视频密码:q5po,需要的可以拿走,我也是网上找到的。我认为看懂这个然后就慢慢摸着门路的。
四、实现注册的功能
准备工作完成后,我们就开始实现注册的功能吧。可能上面那一步会卡住如果是第一次接触Bmob的话,加油,坚持一下总会过去的。如果你需要的用户的数据只是用户名,邮箱和密码,那就可以直接进行下一步操作了,因为Bomb默认的User_表已经有那几列了。
1.先说只要用户名,邮箱和密码的注册方法
private void register(){ String name = mName.getText().toString(); String email = mEmail.getText().toString(); String pass = mPass.getText().toString(); String pass2 = mPass2.getText().toString(); //对输入框的数据进行判断,只有符合要求才可以进行注册 if (TextUtils.isEmpty(name)) { Toast.makeText(RegisterActivity.this, "用户名不能为空", Toast.LENGTH_LONG).show(); return; } if (TextUtils.isEmpty(email)) { Toast.makeText(RegisterActivity.this, "邮箱地址不能为空", Toast.LENGTH_LONG).show(); return; } if (TextUtils.isEmpty(pass)) { Toast.makeText(RegisterActivity.this, "密码不能为空", Toast.LENGTH_LONG).show(); return; } if (!pass2.equals(pass)) { Toast.makeText(RegisterActivity.this, "两次输入的密码不同", Toast.LENGTH_LONG).show(); return; } //弹出加载的动画 final ProgressDialog progress = new ProgressDialog(RegisterActivity.this); progress.setMessage("正在注册...");//动画的信息 progress.setCanceledOnTouchOutside(false); progress.show();//显示动画 User user = new User();//这个是Bmob自带的User表 user.setUsername(name);//将输入的用户名保存到表的usernam的列 user.setPassword(pass);//将输入的密码保存到表的password的列 user.setEmail(email);//将输入的邮箱保存到表的email的列 //调用Bmob的注册方法User是你保存的表,user是你new的User的对象 user.signUp(new SaveListener<User>() { @Override public void done(User user, BmobException e) { if(e == null){//注册成功 progress.dismiss();//将进度的动画取消 Toast.makeText(RegisterActivity.this, "注册成功", Toast.LENGTH_LONG).show();//弹出吐司 BmobUser.logOut();//这里是退出登录 //这里是注册完成后跳转到登录的页面 Intent intent = new Intent(RegisterActivity.this,MainActivity.class); startActivity(intent); finish(); }else{//注册失败 Log.e(TAG, "done: ",e ); Toast.makeText(RegisterActivity.this, "注册失败", Toast.LENGTH_LONG).show(); progress.dismiss(); } } }); }
这里,如果有发邮件的,请到你的应用后台进行设置邮箱的信息。
注册成功后,你的后台的_User表会有你刚刚录入的信息。
2.要实现User添加其他列的用户表的实现
public class myUser extends BmobUser{//定义你自己的User表要继承BmobUser private String path;//这是你要添加的列名 //添加get、set方法 public String getPath() { return path; } public void setPath(String path) { this.path = path; } }
要实现自己的用户表,我们只需要把上面的User改为myUser就可以了。
五、实现登录的功能
这是没有邮箱验证也可以登录的private void submit() { String name = mName.getText().toString(); String password = mPass.getText().toString(); if (TextUtils.isEmpty(name)) { Toast.makeText(MainActivity.this, "邮箱不能为空", Toast.LENGTH_LONG).show(); return; } if (TextUtils.isEmpty(password)) { Toast.makeText(MainActivity.this, "密码不能为空", Toast.LENGTH_LONG).show(); return; } final ProgressDialog progress = new ProgressDialog(MainActivity.this); progress.setMessage("正在登陆..."); progress.setCanceledOnTouchOutside(false); progress.show(); final BmobUser user = new BmobUser();//创建BmobUser对象 user.setUsername(name);//输入的用户名 user.setPassword(password);//输入的密码 //调用Bmob的登录方法 user.login(new SaveListener<BmobUser>() { @Override public void done(BmobUser bmobUser, BmobException e) { if(e == null){//登录成功 progress.dismiss(); Toast.makeText(MainActivity.this, "登陆成功", Toast.LENGTH_LONG).show(); //登录成功后跳转到聊天列表页面 Intent intent = new Intent(MainActivity.this, FirstActivity.class); startActivity(intent); finish(); }else { progress.dismiss(); Toast.makeText(MainActivity.this, "登录失败", Toast.LENGTH_LONG).show(); Log.e(TAG, "done: 失败", e); } } }); }
第一次登录的时候要有邮箱验证的代码如下:
只需把if(e == null)里面的内容改为以下的代码即可
if (user.getEmailVerified()) { Toast.makeText(MainActivity.this, "登陆成功", Toast.LENGTH_LONG).show(); Intent intent = new Intent(MainActivity.this, FirstActivity.class); startActivity(intent); finish(); } else { BmobUser.logOut(); //清除缓存用户对象 Toast.makeText(MainActivity.this, "请在邮箱中激活账户", Toast.LENGTH_LONG).show(); }
如果有登录过的用户,就不用登录了
private void denglu() { BmobUser user = BmobUser.getCurrentUser(); if(user != null) { // 允许用户使用应用 Intent intent = new Intent(MainActivity.this, FirstActivity.class); startActivity(intent); finish(); } }
到这里,就可以完成了注册和登录了。
相关文章推荐
- 【原创】基于Java NIO的多人在线聊天工具源码实现(登录,单聊,群聊)
- 基于struts2和hibernate的登录和注册功能——完整实例
- 基于struts2和hibernate实现登录和注册功能
- 基于SSH框架注册登录功能设计
- JavaWeb实现用户登录注册功能实例代码(基于Servlet+JSP+JavaBean模式)
- Node.js基于express搭建注册登录功能
- android下的XMPP对应smack-4.2.1,实现登录,注册,发单聊,加聊天室,发群聊等简单功能
- 基于Bmob的在线群聊之群聊天的实现
- 智能厨房重构-使用Bmob后端云实现用户注册登录的功能。
- 基于Bmob后端云实现APP,登录功能--binbinyang
- 基于PHP实现用户注册登录功能
- java在线聊天项目1.1版 ——开启多个客户端,分别实现注册和登录功能,使用客户端与服务端信息request机制,重构线程,将单独的登录和注册线程合并
- 用Bmob实现注册和登录功能(网络存储)
- node.js基于express框架搭建一个简单的注册登录Web功能
- 智能厨房重构-使用Bmob后端云实现用户注册登录的功能。
- android studio使用Bmob来实现登录注册的功能
- java在线聊天项目1.2版 ——开启多个客户端,分别实现数据库注册和登录功能后,成功登陆则登录框消失,好友列表窗出现
- android studio使用Bmob来实现登录注册的功能
- 基于eclipse+servlet+jsp+jdbc+mysql登录注册功能(纯净版)
- (NodeJS学习文章收集三) node.js基于express框架搭建一个简单的注册登录Web功能