- 工作空間的build.gradle
allprojects {
repositories {
mavenLocal()
mavenCentral()
google()
jcenter()
//Bmob的maven倉庫地址--必填
maven { url "https://raw.github.com/bmob/bmob-android-sdk/master" }
}
}
- 項目build.gradle
android {
...
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}
...
}
添加jar包,和so包
jar包,和so包下載地址若配置不成功,則看下面需求:
1、右鍵工程根目錄,選擇Properties -> Java Build Path -> Libraries,然後點擊Add External JARs... 選擇指向該libs文件夾下的jar的路徑,點擊OK即可
2、BmobSDK_v3.5.0需要依賴rxjava(1.1.6)、rxandroid(1.2.0)、gson(2.6.2)、okhttp3(3.3.1)、okio(1.7.0)及libbmob.so庫;
3、BmobSDK_v3.4.7需要依賴okhttp3(3.2.0)、okio(1.7.0)及libbmob.so庫;
4、BmobSDK_v3.4.6需要依賴okhttp(2.4.0)、okio(1.4.0),如果需要兼容Android6.0系統,則還需要添加support-v4(23.2.1)及org.apache.http.legacy依賴包。
使用
- 初始化
//第二:自v3.4.7版本開始,設置BmobConfig,允許設置請求超時時間、文件分片上傳時每片的大小、文件的過期時間(單位爲秒),
BmobConfig config = new BmobConfig.Builder(this)
//設置appkey
.setApplicationId(Bmob_ApplicationId)
//請求超時時間(單位爲秒):默認15s
.setConnectTimeout(30)
//文件分片上傳時每片的大小(單位字節),默認512*1024
.setUploadBlockSize(1024 * 1024)
//文件的過期時間(單位爲秒):默認1800s
.setFileExpiration(2500)
.build();
Bmob.initialize(config);
- 增加
public class InitDataBmob extends BmobObject{
...
}
//增加一列(沒有表自動創建表)
InitDataBmob p2 = new InitDataBmob();
p2.version= "1.0.0";
p2.newsVersionName = "1.0.0";
...
p2.save(new SaveListener<String>() {
@Override
public void done(String objectId, BmobException e) {
if (e == null) {
Utility.showToastShort("添加數據成功,返回objectId爲:" + objectId);
} else {
Utility.showToastShort("創建數據失敗:" + e.getMessage());
}
}
});
- 查找
BmobQuery<InitDataBmob> bmobQuery = new BmobQuery<>();
//按照指定條件查找
bmobQuery.addWhereEqualTo("version", "1.0.0")
.findObjects(new FindListener<InitDataBmob>() {
@Override
public void done(List<InitDataBmob> list, BmobException e) {
if (e == null) {
if (list.size() > 0) {
subscriber.onNext(list.get(0).toInitData());
}
} else {
subscriber.onError(e);
}
}
});