參考鏈接
SDK導入
http://doc.bmob.cn/data/android/develop_doc/#2
開發文檔
http://doc.bmob.cn/data/android/develop_doc/
創建應用並下載SDK
SDK下載地址
http://www.bmob.cn/site/sdk#android_sdk
在 Project 的 build.gradle 文件中添加 Bmob的maven倉庫地址
allprojects {
repositories {
jcenter()
//Bmob的maven倉庫地址--必填
maven { url "https://raw.github.com/bmob/bmob-android-sdk/master" }
}
}
在app的build.gradle文件中添加依賴文件
android {
useLibrary 'org.apache.http.legacy'
}
以及
dependencies {
implementation 'cn.bmob.android:bmob-sdk:3.7.3-rc1'
implementation "io.reactivex.rxjava2:rxjava:2.2.2"
implementation 'io.reactivex.rxjava2:rxandroid:2.1.0'
implementation 'com.squareup.okio:okio:2.1.0'
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'com.squareup.okhttp3:okhttp:3.12.0'
}
配置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" />
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.alarm1"> <!-- 這裏就是你的應用包名 -->
<!--允許聯網 -->
<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" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<provider
android:name="cn.bmob.v3.util.BmobContentProvider"
android:authorities="com.example.alarm1.BmobContentProvider">
</provider>
<activity android:name=".ui.login.RegisterActivity"></activity>
<activity android:name=".ui.login.LoginActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:label="@string/app_name"></activity>
</application>
</manifest>
在AndroidManifest.xml文件中配置ContentProvider
<application>
···
<provider
android:name="cn.bmob.v3.util.BmobContentProvider"
android:authorities="你的應用包名.BmobContentProvider">
</provider>
···
</application>
你的應用包名在AndroidManifest.xml文件的開頭有個package屬性寫的就是
同步gradle
點擊這個按鈕
初始化Bmob
//提供以下兩種方式進行初始化操作:
//第一:默認初始化
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);
你的Applicatioin ID在Bmob雲數據庫的設置中可以找到