AndroidSDK篇之Bmob云服务精讲
程序员文章站
2022-05-29 21:34:42
...
AndroidSDK篇之Bmob云服务精讲
Bomb云官网截图
官网地址:
官网文档API地址:
https://docs.bmob.cn/data/Android/a_faststart/doc/index.html
官网下载SDK地址:
Bmob 简介:
《Bmob》是一个可以开发云存储的移动应用软件,给应用软件快速添加一个安全灵活的后台管理系统,方便浏览终端保存的各种信息。
针对移动应用开发的特性,Bmob还提供了主动推送服务.
可以让移动开发者将信息从服务器直接推送到应用程序中,
从而实现软件的主动更新、信息通知等服务。
应用Bmob云服务分为四步:
1.集成Bmob云服务SDK
2.添加相关权限
3.初始化Bmob云SDK
4.应用Bmob云服务实现对数据的增删改查
下面请看实际操作步骤:
集成Bmob云服务SDK
Eclipse导入集成SDK
开发者到 SDK下载中心 下载 数据服务 的Android 版本的SDK,在Eclipse工程的项目根目录中新建libs文件夹,将下载的jar包添加到此文件夹即可。
注:
1、若配置不成功,则需要额外增加以下步骤:
//如果提示以下错误请下载GsonishiCould not find class 'com.google.gson.Gson//这也是笔者犯的错误!!!
右键工程根目录,选择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依赖包。
//如果提示以下错误GsonishiCould not find class ‘com.google.gson.Gson//表示你没有GSON.jar包这也是笔者犯的错误!!!
GSON下载地址:http://www.mvnrepository.com/artifact/com.google.code.gson/gson
当前你也可以在官网上面(https://docs.bmob.cn/data/Android/a_faststart/doc/index.html)参考anroid studio和Eclipse的导入方式
AndroidManifest.xml添加相关权限
配置
在你的应用程序的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" />
初始化Bmob云SDK
//第一:默认初始化
Bmob.initialize(this, "Your Application ID");
// 注:自v3.5.2开始,数据sdk内部缝合了统计sdk,开发者无需额外集成,传渠道参数即可,不传默认没开启数据统计功能
//Bmob.initialize(this, "Your Application ID","bmob");
//第二:自v3.4.7版本开始,设置BmobConfig,允许设置请求超时时间、文件分片上传时每片的大小、文件的过期时间(单位为秒),
//BmobConfig config =new BmobConfig.Builder(this)
////设置appkey
//.setApplicationId("Your Application ID")
////请求超时时间(单位为秒):默认15s
//.setConnectTimeout(30)
////文件分片上传时每片的大小(单位字节),默认512*1024
//.setUploadBlockSize(1024*1024)
////文件的过期时间(单位为秒):默认1800s
//.setFileExpiration(2500)
//.build();
//Bmob.initialize(config);
Bmob之SDK最先版上传图片文件源码:
//点击上传文件图片
String imagePath;
public void upImage(View v) {
//从手机的下载目录获取图片文件路径
imagePath=Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).getPath()+"/"+"1.jpg";
File file=new File(imagePath);
BmobFile bmobFile=new BmobFile(file);
bmobFile.upload(new UploadFileListener() {
@Override
public void done(BmobException arg0) {
// TODO Auto-generated method stub
if(arg0==null) {
Toast.makeText(getApplicationContext(), "上传文件成功!", 1000).show();
}else {
Toast.makeText(getApplicationContext(), "上传文件失败!", 1000).show();
}
}
});
}
应用Bmob云服务实现对数据的增删改查请参考官网详细API