史上最简单的注册
一、前言
既然说是最简单的注册功能,到底简单到哪呢。其实就是省去了web 端,无需自己再写应用后端。
bmob 替我们做了这部分,所以我们的工作就相对简单了。如果你还没有配置过 Bmob 后端云,请先参考文章后端云的配置使用:链接在这里
到底有多简单呢,
此处以android studio 平台为例。
就是继承 BmobUser 类的实例化对象 user ,调用接口的注册方法 signUp 即可;当然 user 不能为空,初始化数据,以便注册,
class User expends BmobUser{}
User user = new User();
user.setUsername("zhangsan");
user.setPassword("111111");
user.signUp(Context context, SaveListener listener); //两个参数,前者是上下文,后面是一个监听事件 SaveListener
怎样判断注册成功与否,就是通过 SaveListener 事件
new SaveListener(
//重写两个方法即可,成功 onSuccess (){} ;失败方法 onFailure(int i, String s){}
public void onSuccess(){}
public void onFailure(int i, String s){}
);
二、示例代码
1.布局文件代码:activity_main.layout
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context=".bean.MainActivity">
<EditText
android:id="@+id/id_username"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="10dp"
android:singleLine="true"
android:hint="username"
android:textSize="20dp"/>
<EditText
android:id="@+id/id_password"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="10dp"
android:inputType="textPassword"
android:singleLine="true"
android:hint="password"
android:textSize="20dp"/>
<Button
android:id="@+id/id_register"
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="注册"
android:textSize="20dp"
/>
</LinearLayout>
2.User 用户类代码如下:User.java
package hpu.edu.cn.bmobtest.model;
import cn.bmob.v3.BmobUser;
/**
* Created by Administrator on 2016/9/10 0010.
*/
public class User extends BmobUser {
}
3.java 处理代码如下:Mainactivity.java
package hpu.edu.cn.bmobtest.bean;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import cn.bmob.v3.Bmob;
import cn.bmob.v3.listener.SaveListener;
import hpu.edu.cn.bmobtest.R;
import hpu.edu.cn.bmobtest.model.User;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//初始化 SDK信息
Bmob.initialize(getApplicationContext(),"306b33cfaa821ecc7940c2b4b19d48ce");
setContentView(R.layout.activity_main);
final EditText e_username = (EditText)findViewById(R.id.id_username);
final EditText e_password = (EditText)findViewById(R.id.id_password);
Button b_register = (Button)findViewById(R.id.id_register);
b_register.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String username = e_username.getText().toString(); //获取控件的文本
String password = e_password.getText().toString();
User user = new User(); //实例化用户对象
user.setUsername(username);
user.setPassword(password);
user.signUp(MainActivity.this, new SaveListener() { //调用Bmob user 对象的注册方法 signUp 即可
@Override
public void onSuccess() {
//注册成功的操作
Toast.makeText(MainActivity.this, "注册成功!", Toast.LENGTH_SHORT).show();
}
@Override
public void onFailure(int i, String s) {
//注册失败的操作
Toast.makeText(MainActivity.this, "服务器繁忙!", Toast.LENGTH_SHORT).show();
}
});
}
});
}
}
三、运行效果
运行结果如下:
云数据库对应表用户记录增加一条新注册数据
以上代码测试可用。
更多支持请参考开发文档:链接在这里