Bmob后端云—数据库、服务器!
实现图:

Bmob后端云

    • 简介
    • 获取应用密钥
    • SDK导入
    • 配置AndroidManifest.xml
    • 数据库案例

简介

对于很多Android/ios/wp个人移动开发者来说,开发一个具有网络功能的应用不是一件容易的事,不仅需要购买/租赁服务器,还必须掌握一门诸如Java/.net/php这类的服务器开发语言,每开发一款移动应用程序,就必须开发维护对应的服务器程序。这一切对于移动开发者来说,都是一个冗长的噩梦。如何让移动开发者从繁琐的机械劳动中解脱出来,将更多精力投入到移动应用程序的创意研发,从而不断提升产品质量呢?Bmob移动应用云存储平台的诞生就很好地解决了以上难题。在Bmob平台上,您只需注册一个帐号,成功后申请创建任意多个数据库,获得对应的Key,下载对应版本的SDK并将其嵌入到移动应用中,便可以调用存取API,进行数据的任意操作。有了Bmob,您在5分钟内就可以学会如何开发一个云存储的移动应用软件,给应用软件快速添加一个安全灵活的后台管理系统,方便您浏览终端保存的各种信息。

获取应用密钥

1、注册Bmob账号,百度搜索进入官网注册即可。
2、进入我的控制台创建应用,输入名称和选择应用类型即可

3、获取应用的密钥,点击进入刚创建的应用,点击设置,即可看到appID

Application ID:SDK初始化必须用到此密钥
REST API Key:REST API请求中HTTP头部信息必须附带密钥之一
Secret Key:是SDK安全密钥,不可泄漏,在云函数测试云函数时需要用到
Master Key:超级权限Key。应用开发或调试的时候可以使用该密钥进行各种权限的操作,此密钥不可泄漏

SDK导入

以Android studio为例
1、在 Project 的 build.gradle 文件中添加 Bmob的maven仓库地址,记得点击’Sync Now

maven {url 'https://dl.bintray.com/chaozhouzhang/maven' }


2、在app的build.gradle文件中添加依赖文件,记得点击’Sync Now

android {    useLibrary 'org.apache.http.legacy'}

导入sdk和相关工具 如okhttp3是链接网络 gson是json格式解析的工具,之后等待下载完成

dependencies {    implementation 'cn.bmob.android:bmob-sdk:3.7.8'    implementation "io.reactivex.rxjava2:rxjava:2.2.8"     implementation 'io.reactivex.rxjava2:rxandroid:2.1.1'      implementation 'com.squareup.okhttp3:okhttp:3.14.1'        implementation 'com.squareup.okio:okio:2.2.2'          implementation 'com.google.code.gson:gson:2.8.5'    }


配置需要细心,如配置不成功,百度其错误信息,很大可能为其他的配置问题。

配置AndroidManifest.xml

添加如下配置


之后再添加

······

数据库案例

User类继承BmobObject 会在Bmob中建立一个名为User的表
有username和password其余为自动生成

import cn.bmob.v3.BmobObject;public class User extends BmobObject {    private String username;    private String password;    public String getName() {        return username;    }    public void setName(String name) {        this.username = name;    }    public String getPassword() {        return password;    }    public void setPassword(String password) {        this.password = password;    }}

LoginActivity实现功能

import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast;import cn.bmob.v3.Bmob;import cn.bmob.v3.BmobQuery;import cn.bmob.v3.exception.BmobException;import cn.bmob.v3.listener.QueryListener;import cn.bmob.v3.listener.SaveListener;import cn.bmob.v3.listener.UpdateListener;public class LoginActivity extends AppCompatActivity implements View.OnClickListener {    private EditText Username;    private EditText Passwors;    private TextView Delete;    private Button Login;    private Button Add;    private String mobjectId;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_login);        Bmob.initialize(this,"cee31a21a023cdb9*************"); //初始化        Username = findViewById(R.id.et_username);        Passwors = findViewById(R.id.et_password);        Delete = findViewById(R.id.tv_delete);        Login = findViewById(R.id.bt_login);        Add = findViewById(R.id.bt_add);        Username.setOnClickListener(this);        Passwors.setOnClickListener(this);        Delete.setOnClickListener(this);        Login.setOnClickListener(this);        Add.setOnClickListener(this);    }    @Override    public void onClick(View view) {       switch (view.getId()){           case R.id.bt_login:               find(mobjectId);               break;           case  R.id.tv_delete:               remove(mobjectId);               break;           case R.id.bt_add:               add();               break;       }    }//增    private void add() {        User user = new User();        user.setName(Username.getText().toString());        user.setPassword(Passwors.getText().toString());        user.save(new SaveListener() {            @Override            public void done(String objectId,BmobException e) {                if(e==null){                    mobjectId = objectId;                    Toast.makeText(LoginActivity.this,"注册成功!",Toast.LENGTH_LONG).show();                }else{                    Toast.makeText(LoginActivity.this,"注册失败!",Toast.LENGTH_LONG).show();                }            }        });    }//删    private void remove(String objectId) {        User user = new User();        user.setObjectId(objectId);        user.delete(new UpdateListener() {            @Override            public void done(BmobException e) {                if(e==null){                    Toast.makeText(LoginActivity.this,"删除成功!",Toast.LENGTH_LONG).show();                }else{                    Toast.makeText(LoginActivity.this,"删除失败!",Toast.LENGTH_LONG).show();                }            }        });    }    //查    private void find(String objectId) {        BmobQuery bmobQuery = new BmobQuery();        bmobQuery.getObject(objectId, new QueryListener() {    @Override    public void done(User user, BmobException e) {        //假如能找到,异常为空        if (e == null && user.getPassword().equals(Passwors.getText().toString())){            Toast.makeText(LoginActivity.this,"登陆成功!",Toast.LENGTH_LONG).show();        }        //假如找不到,抛出异常        else Toast.makeText(LoginActivity.this,e.getMessage(),Toast.LENGTH_LONG).show();    }       });    }}

简单的布局

<?xml version="1.0" encoding="utf-8"?>

更多相关文章

  1. Android(安卓)蓝牙开发基本流程
  2. Android视频图片缩略图的获取
  3. android应用开发总论
  4. android 理解和使用自定义权限
  5. 成为android工程师的31+个小技巧
  6. Android(安卓)应用进程启动流程
  7. 动态下发 so 库在 Android(安卓)APK 安装包瘦身方面的应用
  8. BitRaser for Mobile iOS和Android移动设备的安全数据擦除软件
  9. Android基础入门知识

随机推荐

  1. Android 获取最近应用的缩略图
  2. Motorola RAZR 將會在 2012 年初更新到 I
  3. 国内Android Market孰更好
  4. Android编程之客户端通过socket与服务器
  5. 在android上运行C程序
  6. 了解Android 的支持库
  7. Android之monkey Test,Monkey测试中的黑
  8. Android邮件发送详解
  9. Android开发实践:自己动手编写图片剪裁应
  10. 更强续航,尽在 Android 9 Pie