Bmob在android studio中的环境配置和初始化

时间:2020-12-02 19:39:42

Bmob在android studio中的环境配置和初始化

这里是bmob的开发文档,里面也有详细地步骤http://docs.bmob.cn/Android/developdoc/index.html?menukey=develop_doc&key=develop_android,由于第一次使用,我用了挺长的时间去配置,一开始一直出错,还找不到原因,不过现在环境已经搭建好了。我没有按照开发文档中的办法去配置,因为一直报错,所以我讲一下我实现配置的方法。

1、去bmob官网注册一个账号,并创建一个应用。

2、在应用程序的AndroidManifest.xml文件中添加相应的权限:

    <!--允许联网 -->  
<uses-permission android:name="android.permission.INTERNET" />
<!--获取GSM(2g)、WCDMA(联通3g)等网络状态的信息 -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!--获取wifi网络状态的信息 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!--保持CPU 运转,屏幕和键盘灯有可能是关闭的,用于文件上传和下载 -->
<uses-permission android:name="android.permission.WAKE_LOCK" />
<!--获取sd卡写的权限,用于文件上传和下载-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!--允许读取手机状态 用于创建BmobInstallation-->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

3、在Project的build.gradle文件中添加Bmob的maven仓库地址,示例如下:(注意文字说明部分):


buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
}
}

allprojects {
repositories {
jcenter()
//Bmob的maven仓库地址,必须填写
maven { url "https://raw.github.com/bmob/bmob-android-sdk/master" }
}
}

4、打开app下的build.gradle文件,添加compile ‘cn.bmob.android:bmob-sdk:3.5.3’

dependencies {
compile ‘cn.bmob.android:bmob-sdk:3.5.3’
compile fileTree(include: [‘*.jar’], dir: ‘libs’)
testCompile ‘junit:junit:4.12’
compile ‘com.android.support:appcompat-v7:23.3.0’
}

注意:在这里说一下我为什么不下载SDK,放到libs文件夹中,如果使用这种方法,在运行时会报初始化错误

Java.lang.UnsatisfiedLinkError: No implementation found for boolean cn.bmob.v3.helper.BmobNative.init(android.content.Context, java.lang.String) (tried Java_cn_bmob_v3_helper_BmobNative_init and Java_cn_bmob_v3_helper_BmobNative_init__Landroid_content_Context_2Ljava_lang_String_2)。。。。。

5、初始化bmobSDK

在应用程序启动的Activity的onCreate()方法中初始化Bmob,代码为:

    Bmob.initialize(this, "your Application ID");  

6.测试
写一个Person类继承BmobObject,定义属性,并写set()和get()方法。
在MainActivity中声明Person对象,并赋值
Person.java

public class Person extends BmobObject {
private String name;
private String address;

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}

在MainActivity.java中添加一个按钮,初始化等省略

     //添加数据
case R.id.btn_add:
Person p2 = new Person();
p2.setName("yyl");
p2.setAddress("成都");
p2.save(new SaveListener<String>() {
@Override
public void done(String objectId,BmobException e) {
if(e==null){
Toast.makeText(MainActivity.this,"添加数据成功,返回objectId为:"+objectId,Toast.LENGTH_SHORT).show();

}else{
Toast.makeText(MainActivity.this,"创建数据失败"+objectId,Toast.LENGTH_SHORT).show();

}
}
});
break;

6.运行后即可