Bmob移动后端云服务平台--Android从零开始--(二)android快速入门

Bmob移动后端云服务平台--Android从零开始--(二)android快速入门

上一篇博文我们简单介绍何为Bmob移动后端服务平台,以及其相关功能和优势。本文将利用Bmob快速实现简单例子,进一步了解它的强大之处。

一、准备工作

1.注册Bmob账号

在网址栏输入www.bmob.cn或者在百度输入Bmob进行搜索,打开Bmob官网后,点击右上角的“注册”,在跳转页面填入你的姓名、邮箱、设置密码,确认后到你的邮箱激活Bmob账户,你就可以用Bmob轻松开发应用了。

Bmob移动后端云服务平台--Android从零开始--(二)android快速入门_第1张图片

2.网站后台创建应用

登录账号进入bmob后台后,点击后台界面左上角“创建应用”,在弹出框输入你应用的名称,然后确认,你就拥有了一个等待开发的应用。

Bmob移动后端云服务平台--Android从零开始--(二)android快速入门_第2张图片

3.获取应用密钥和下载SDK

选择你要开发的应用,点击该应用下方对应的“应用密钥”

Bmob移动后端云服务平台--Android从零开始--(二)android快速入门_第3张图片

在跳转页面,获取Application ID,此ID将会在初始化SDK中使用到。

Bmob移动后端云服务平台--Android从零开始--(二)android快速入门_第4张图片

获取Application ID后,下载SDK,开发者可以根据自己的需求选择相应的iOS SDK 或Android SDK,点击下载即可。

Bmob移动后端云服务平台--Android从零开始--(二)android快速入门_第5张图片


二、代码实现

需求:本实例简单的实现用户利用用户名和密码进行注册。注册成功后,利用注册的数据,进行登陆,操作成功后给出相应的提示。

代码实现步骤:

1> 引入BmobSDK 架包

将下载的BmobSDK中包含如下的架包引入到Android应用

Bmob移动后端云服务平台--Android从零开始--(二)android快速入门_第6张图片

2> 在清单文件中添加如下的权限






3> 初始化BmobSDK

在你应用程序启动的Activity的onCreate()方法中初始化Bmob功能。代码如下所示:

   @Override
    protected void onCreate(Bundle savedInstanceState) {
         // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
         // 初始化 Bmob SDK
        // 使用时请将第二个参数Application ID替换成你在Bmob服务器端创建的Application ID
        Bmob.initialize(this, "Your Application ID");
    }
4>创建继承于BmobObject的实体UserBean

package com.example.bmobdemo.bean;

import cn.bmob.v3.BmobObject;

/**
 *  
 *     
 * 项目名称:BmobDemo    
 * 类名称:UserBean    
 * 类描述:    继承BmobObject的用户实体类
 * 创建时间:2014年12月18日 下午10:25:40    
 * 修改人:Administrator    
 * 修改时间:2014年12月18日 下午10:25:40    
 * 修改备注:    
 * @version     
 *
 */
public class UserBean extends BmobObject{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private String loginId;
	private String userName;
	private String password;
	public String getLoginId() {
		return loginId;
	}
	public void setLoginId(String loginId) {
		this.loginId = loginId;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	@Override
	public String toString() {
		return "UserBean [loginId=" + loginId + ", userName=" + userName
				+ ", password=" + password + "]";
	}
	
	
	
}

4>案例效果

Bmob移动后端云服务平台--Android从零开始--(二)android快速入门_第7张图片

Bmob平台服务器数据

Bmob移动后端云服务平台--Android从零开始--(二)android快速入门_第8张图片

5>相关的布局文件和清单文件

1.清单文件,AndroidManifest.xml




    

    
    
    
    
    
    
    

    
        
            
                

                
            
        
    


2.主布局文件,activity_main.xml

本实例需要一个用户名的EditText和密码的EditText,以及注册和登陆的Button。



    

        

        
    

    

        

        
    

    


5>java实现代码

1.主界面代码MainActivity.java

package com.example.bmobdemo;

import java.util.List;

import cn.bmob.v3.Bmob;
import cn.bmob.v3.BmobQuery;
import cn.bmob.v3.listener.FindListener;
import cn.bmob.v3.listener.SaveListener;

import com.example.bmobdemo.bean.UserBean;
import com.example.bmobdemo.util.ToastUtils;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends Activity implements OnClickListener {

	// Bmob应用创建建时获取的Application id,根据自己创建的应用来写入
	private static final String BMOB_APPLICATION_ID = "be783fdda4eac8a781a9f80596e98fe0";
	private Button registerBtn, loginBtn;
	private EditText loginEt, passwordEt;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);

		/**
		 * 初始化BmobSDK
		 */
		Bmob.initialize(this, BMOB_APPLICATION_ID);
		initView();
	}

	/**
	 * 
	 * 初始化控件
	 */
	private void initView() {
		registerBtn = (Button) this.findViewById(R.id.id_register_btn);
		loginBtn = (Button) this.findViewById(R.id.id_login_btn);
		loginEt = (EditText) this.findViewById(R.id.id_login_name_et);
		passwordEt = (EditText) this.findViewById(R.id.id_password_et);

		registerBtn.setOnClickListener(this);
		loginBtn.setOnClickListener(this);

	}

	/**
	 * 注册
	 */
	private void register() {
		String loginId = loginEt.getText().toString();
		String password = passwordEt.getText().toString();
		if (loginId.isEmpty() || password.isEmpty()) {
			ToastUtils.toast(this, "密码或账号不为空!");
			return;
		}

		final UserBean userBean = new UserBean();
		userBean.setLoginId(loginId);
		userBean.setPassword(password);
		userBean.setUserName("Bmob");
		/**
		 * 保存数据到Bmob服务器
		 */
		userBean.save(this, new SaveListener() {

			@Override
			public void onSuccess() {
				ToastUtils.toast(MainActivity.this, userBean.toString()
						+ " 注册成功");
			}

			@Override
			public void onFailure(int arg0, String arg1) {
				ToastUtils.toast(MainActivity.this, arg0 + "," + arg1 + " 注册失败");
			}
		});

	}

	/**
	 * 登陆
	 */
	private void login() {
		String loginId = loginEt.getText().toString();
		String password = passwordEt.getText().toString();
		if (loginId.isEmpty() || password.isEmpty()) {
			ToastUtils.toast(this, "密码或账号不为空!");
			return;
		}

		BmobQuery userQuery = new BmobQuery();

		// 查询条件
		userQuery.addWhereEqualTo("loginId", loginId);
		userQuery.addWhereEqualTo("password", password);

		userQuery.findObjects(this, new FindListener() {

			@Override
			public void onError(int arg0, String arg1) {
				ToastUtils.toast(MainActivity.this, arg0 + "," + arg1 + " 登陆失败");
			}

			@Override
			public void onSuccess(List userList) {
				if (userList != null && userList.size() > 0)
					ToastUtils.toast(MainActivity.this, " 登陆成功");
				else {
					ToastUtils.toast(MainActivity.this, " 登陆失败");
				}
			}
		});
	}

	@Override
	public void onClick(View v) {
		switch (v.getId()) {
		case R.id.id_register_btn:
			register();
			break;
		case R.id.id_login_btn:
			login();
			break;
		}
	}

}

2.实体类UserBean

package com.example.bmobdemo.bean;

import cn.bmob.v3.BmobObject;

/**
 *  
 *     
 * 项目名称:BmobDemo    
 * 类名称:UserBean    
 * 类描述:    继承BmobObject的用户实体类
 * 创建时间:2014年12月18日 下午10:25:40    
 * 修改人:Administrator    
 * 修改时间:2014年12月18日 下午10:25:40    
 * 修改备注:    
 * @version     
 *
 */
public class UserBean extends BmobObject{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private String loginId;
	private String userName;
	private String password;
	public String getLoginId() {
		return loginId;
	}
	public void setLoginId(String loginId) {
		this.loginId = loginId;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	@Override
	public String toString() {
		return "UserBean [loginId=" + loginId + ", userName=" + userName
				+ ", password=" + password + "]";
	}
	
	
	
}

3.工具类ToastUtils.java

package com.example.bmobdemo.util;

import android.content.Context;
import android.widget.Toast;

/**
 * Toast提示工具类
 * createdTime: 2014年12月18日 下午10:55:21
 *
 */
public class ToastUtils {
	
	public static void toast(Context context,String msg){
		Toast.makeText(context, msg, Toast.LENGTH_SHORT).show();
	}
	
	public static void toast(Context context,int msgId){
		Toast.makeText(context, msgId, Toast.LENGTH_SHORT).show();
	}
	
}


源码路径:http://download.csdn.net/detail/a123demi/8283761


你可能感兴趣的:(Bmob移动后端云服务平台)