




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
極動(dòng)云ANDROIDSDK開發(fā)文檔目錄1版本管理 2修訂記錄: 22AndroidSDK簡介 22ITASDK使用指南 33ITASDK接口說明 61. 啟動(dòng)服務(wù) 62. 停止服務(wù) 83. 用戶登出 84. 用戶注冊(cè) 85. 用戶登錄 96. 找回密碼 107. 修改密碼 118. 添加設(shè)備: 129. 刪除設(shè)備: 1210. 修改控制設(shè)備 1311. 獲取綁定設(shè)備列表 1412. 查詢?cè)O(shè)備信息 1413. 查詢用戶信息 1514. 上送用戶信息 1615. 查詢?cè)O(shè)備歷史消息 1716. 自定義方法: 1817. 設(shè)備添加 1917.1 Easylink方式添加 1917.2 Esp方式添加 2018. 短信驗(yàn)證 2018.1 MOB注冊(cè) 2018.2 MOB獲取驗(yàn)證碼 2118.3 注銷MOB短信回調(diào) 21附錄1:返回結(jié)果的響應(yīng)碼表 23附錄2:SDK內(nèi)部設(shè)計(jì)相關(guān)流程圖 251版本管理修訂歷史版本日期修訂人說明1.02016/4/18宋世偉修訂2.02016/8/10宋世偉修訂2.12017/9/26宋世偉修訂修訂記錄:1.0版本修改: 1、修改了注冊(cè)接口的參數(shù) 2、修改登錄接口參數(shù) 3、修改ITAGlobalExceptionHandler接口方法的參數(shù) 4、增加自定義tag方法 5、增加獲取設(shè)備歷史記錄新方法,用于特殊設(shè)備獲取信息 6、增加修改設(shè)備屬性方法 8、增加EasyLink方式添加設(shè)備2AndroidSDK簡介極動(dòng)云作為綜合性云平臺(tái),為傳統(tǒng)的家電企業(yè)提供一對(duì)一物聯(lián)網(wǎng)升級(jí)改造以及7*24小時(shí)可靠運(yùn)維服務(wù),協(xié)助家電企業(yè)構(gòu)建集產(chǎn)品管理、產(chǎn)品推廣、產(chǎn)品維護(hù)等功能于一體的后臺(tái)管理系統(tǒng),同時(shí),也能夠?yàn)橛脩舸蛟旒h(yuǎn)程監(jiān)控、家電管理、家電聯(lián)動(dòng)等智能化功能于一體的物聯(lián)網(wǎng)產(chǎn)品。ITASDK是用于方便快捷接入極動(dòng)云,基于Android平臺(tái)的一個(gè)二次開發(fā)工具,主要提供了了以jar包以及aar包的形式分別針對(duì)eclipse以及androidstudio的開發(fā)環(huán)境。其主要實(shí)現(xiàn)的功能有:用戶登錄、用戶注冊(cè)、找回密碼、密碼修改、設(shè)備狀態(tài)查詢、設(shè)備控制、設(shè)備綁定、設(shè)備解綁等一系列智能家居的基本功能。2ITASDK使用指南創(chuàng)建工程及導(dǎo)入SDK(這里分為eclipse以及AndroidStudio):在eclipse中首先創(chuàng)建一個(gè)工程,然后把itacloudframework.jar拷貝到libs文件夾中如下圖所示:將itacloudframework.jar加入到編譯路徑如圖所示:最后將armeabi文件夾拷貝到libs文件夾下即可如下圖:AndroidStudio導(dǎo)入SDKStudio中導(dǎo)入比較方便與eclipse不同Studio使用arr的包如圖將arr的包拷貝到libs目錄下:然后在Module的build.gradle里面添加依賴即可:注:AndroidStudio中也可以添加jar包在build.gradle中添加如下字段dependencies{compilefileTree(include:['*.jar'],dir:'libs')}或者右鍵jar如圖點(diǎn)擊addAsLibrary把jar包加入到工程中即可,重新編譯一次項(xiàng)目既可完成加載。3.配置AndroidManifest.xml打開您項(xiàng)目的“AndroidManifest.xml”,在其中添加如下的權(quán)限:<uses-permissionandroid:name="android.permission.INTERNET"/>
<uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permissionandroid:name="android.permission.CHANGE_NETWORK_STATE"/>
<uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permissionandroid:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"/>
<uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
<uses-permissionandroid:name="android.permission.WRITE_SETTINGS"/>然后添加service:<service
android:name="work.ITACloudLocalService"
android:exported="true"
android:process=":remote"
android:singleUser="true"/>添加App的唯一秘鑰需要向平臺(tái)申請(qǐng):<meta-data
android:name="ITAAppAuthority"
android:value="填寫秘鑰"/>至此AndroidManifest.xml填寫完成。3ITASDK接口說明啟動(dòng)服務(wù)通過調(diào)用ITAMachine類的方法啟動(dòng)服務(wù)并注冊(cè)系統(tǒng)的回調(diào)在使用本SDK時(shí)需要事先調(diào)用該方法啟動(dòng)服務(wù)創(chuàng)建服務(wù)實(shí)例調(diào)用啟動(dòng)服務(wù)API參數(shù)說明:參數(shù)參數(shù)說明context這里填寫調(diào)用者的Application上下文,使用getApplication方法globalHandler系統(tǒng)方法的回調(diào)主要為鏈接狀態(tài)的回調(diào)以及異地登錄回調(diào)代碼示例:privatevoidonStartClick(){
ITAMachine.startMachine(getApplication(),newITAGlobalExceptionHandler(){
@Override
publicvoidonLocalServiceStart(booleanavailable){
}
@Override
publicvoidonAuthorityVerify(booleanavailable){
}
@Override
publicvoidonNetworkStateChanged(booleanavailable){
//TODOAuto-generatedmethodstub
}
@Override
publicvoidonMacroCloudStateChanged(booleanavailable){
//TODOAuto-generatedmethodstub
}
@Override
publicvoidonMutiLogin(){
}
});
}回調(diào)參數(shù)說明:回調(diào)方法參數(shù)說明voidonLocalServiceStart(booleanavailable)service與activity鏈接狀態(tài)的回調(diào)true:成功,false:連接斷開voidonAuthorityVerify(booleanavailable);service是否取得平臺(tái)驗(yàn)證通過true:通過驗(yàn)證,false:未通過驗(yàn)證voidonNetworkStateChanged(booleanavailable);網(wǎng)絡(luò)狀態(tài)發(fā)生變化時(shí)的回調(diào)true:網(wǎng)絡(luò)可用,false:網(wǎng)絡(luò)不可用voidonMacroCloudStateChanged(booleanavailable)service與平臺(tái)斷開鏈接時(shí)調(diào)用此方法true:與平臺(tái)建立連接,false:與平臺(tái)斷開連接voidonMutiLogin()異地登錄回調(diào)當(dāng)你的賬戶在其他手機(jī)登錄時(shí)回調(diào)該接口停止服務(wù)該接口用于關(guān)閉后臺(tái)服務(wù),釋放后臺(tái)進(jìn)程。示例代碼:privatevoidonStopClick(){
ITAMachine.stopMachine();
}用戶登出通過調(diào)用該接口登出當(dāng)前已登錄賬戶。參數(shù)參數(shù)說明callback登出回調(diào)API示例代碼:privatevoidonLogoutClick(){
ITAMachine.userLogout(newITALogoutResultCallback(){
@Override
publicvoidonSuccess(){
}
@Override
publicvoidonFail(interrCode){
}
});
}回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess()登出成功voidonFail(interrCode)登出失敗errCode:登出失敗的返回碼用戶注冊(cè)用戶調(diào)用該方法進(jìn)行賬號(hào)的注冊(cè)參數(shù)參數(shù)說明phone注冊(cè)的手機(jī)號(hào)Password注冊(cè)密碼,密碼的長度不超過40SmsCode短信驗(yàn)證碼,這里需要實(shí)現(xiàn)調(diào)用mob短信接口獲取短信驗(yàn)證碼callback注冊(cè)方法的回調(diào)方法示例:ITAMachine.registerBySMS(phone,password,code,newITARegisterResultCallback(){
@Override
publicvoidonSuccess(Stringusername){
}
@Override
publicvoidonFail(interrCode,Stringusername){
}
}));
}回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess(Stringusername)注冊(cè)成功返回手機(jī)號(hào)voidonFail(interrCode)注冊(cè)失敗errCode:注冊(cè)失敗的返回碼用戶登錄通過調(diào)用此接口登錄平臺(tái)參數(shù)參數(shù)說明Username用戶注冊(cè)時(shí)的手機(jī)號(hào)Password用戶注冊(cè)時(shí)的密碼Token選填,信鴿推送的唯一token如需使用推送,需集成信鴿SDK獲取TOKENcallback登錄方法的回調(diào)代碼示例:ITAMachine.userLogin(name,password,token,newITALoginResultCallback(){
@Override
publicvoidonSuccess(StringuserId){
}
@Override
publicvoidonFail(interrCode,Stringusername){
}
}));回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess(StringuserId)登錄成功返回用戶IDvoidonFail(interrCode)登錄失敗errCode:登錄失敗的返回碼找回密碼調(diào)用此方法設(shè)置新密碼,需要驗(yàn)證手機(jī)參數(shù)參數(shù)說明Phone用戶注冊(cè)時(shí)的手機(jī)號(hào)Password需要設(shè)置的新密碼VerifyCode手機(jī)短信驗(yàn)證碼,通過調(diào)用mob接口獲取callback找回密碼方法的回調(diào)代碼示例:ITAMachine.retakePasswordNew(phone,password,verify,newITAResetPasswordResultCallback
(){
@Override
publicvoidonSuccess(){
}
@Override
publicvoidonFail(interrCode){
}
});回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess()密碼設(shè)置成功voidonFail(interrCode)密碼設(shè)置失敗errCode:登錄失敗的返回碼修改密碼調(diào)用此接口修改密碼,該接口與找回密碼有所區(qū)別,需要在登錄狀態(tài)下調(diào)用參數(shù)參數(shù)說明OldPassword賬戶現(xiàn)在所使用密碼NewPassword需要設(shè)置的新密碼callback修改密碼方法的回調(diào)代碼示例:ITAMachine.modifyPassword(oldPass,newPass,newITAModifyPasswordResultCallback(){
@Override
publicvoidonSuccess(){
}
@Override
publicvoidonFail(interrCode){
}
});回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess()密碼修改成功voidonFail(interrCode)密碼修改失敗errCode:登錄失敗的返回碼添加設(shè)備:調(diào)用該方法添加設(shè)備:參數(shù)參數(shù)說明deviceId待添加設(shè)備唯一Id號(hào)callback添加設(shè)備方法的回調(diào)代碼示例:ITAMachine.bindDevice(deviceId,newITABindDeviceResultCallback(){
@Override
publicvoidonSuccess(StringdeviceId,Bundlebundle){
}
@Override
publicvoidonFail(StringdeviceId,interrCode){
}
});回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess(StringdeviceId,Bundlebundle)添加設(shè)備成功,返回設(shè)備Id以及設(shè)備基本信息Bundle中的Key有"device_id","home_id","area_id","device_connect","device_name","device_key"voidonFail(interrCode)添加設(shè)備失敗errCode:添加設(shè)備失敗的返回碼刪除設(shè)備:通過調(diào)用本方法將設(shè)備從賬戶中刪除參數(shù)參數(shù)說明deviceId待添加設(shè)備唯一Id號(hào)callback刪除設(shè)備方法的回調(diào)代碼示例:ITAMachine.unBindDevice(deviceId,newITAUnBindDeviceResultCallback(){
@Override
publicvoidonSuccess(StringdeviceId){
}
@Override
publicvoidonFail(StringdeviceId,interrCode){
}
});回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess(StringdeviceId)刪除設(shè)備成功,返回設(shè)備IdvoidonFail(interrCode)刪除設(shè)備失敗errCode:刪除設(shè)備失敗的返回碼修改控制設(shè)備調(diào)用此方法控制設(shè)備以及修改設(shè)備參數(shù)參數(shù)參數(shù)說明deviceId待控制設(shè)備唯一Id號(hào)propertyMap類型Map<String,String>,key為待控制或設(shè)置的屬性字段,value為待控制或設(shè)置的內(nèi)容可同時(shí)設(shè)置多個(gè)屬性字段。callback控制或修改設(shè)備的回調(diào)代碼示例:ITAMachine.updateDevice(deviceId,property,newITAUpdateDeviceResultCallback(){
@Override
publicvoidonSuccess(StringdeviceId){
}
@Override
publicvoidonFail(StringdeviceId,interrCode){
}
});回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess(StringdeviceId)控制修改設(shè)備成功,返回設(shè)備IdvoidonFail(StringdeviceId,interrCode)控制修改設(shè)備失敗deviceId:目標(biāo)設(shè)備IderrCode:控制修改設(shè)備失敗的返回碼獲取綁定設(shè)備列表通過此方法獲取與當(dāng)前登錄賬戶所有綁定的設(shè)備參數(shù)參數(shù)說明callback獲取所有設(shè)備方法的回調(diào)代碼示例:ITAMachine.userGetBindDeviceList(newITAQueryBoundDeviceListResultCallback(){
@Override
publicvoidonSuccess(Stringdevices){
}
@Override
publicvoidonFail(interrCode){
}
});回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess(Stringdevices)獲取綁定設(shè)備列表成功Devices設(shè)備列表的json數(shù)組字符串voidonFail(interrCode)獲取綁定設(shè)備列表失敗errCode:控制修改設(shè)備失敗的返回碼查詢?cè)O(shè)備信息通過調(diào)用此方法查詢?cè)O(shè)備參數(shù)信息參數(shù)參數(shù)說明deviceId待查詢?cè)O(shè)備唯一Id號(hào)listList<String>中add需要查詢的設(shè)備屬性字段,可查詢多個(gè)callback查詢?cè)O(shè)備信息的回調(diào)代碼示例:ITAMachine.getDeviceProperty(deviceId,list,newITAGetDevicePropertyResultCallback(){
@Override
publicvoidonSuccess(StringdeviceId,Bundlebundle){
}
@Override
publicvoidonFail(StringdeviceId,interrCode){
}
});回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess(StringdeviceId,Bundlebundle)查詢?cè)O(shè)備信息成功deviceId:目標(biāo)設(shè)備Id,bundle:所查詢的字段的key和valuevoidonFail(StringdeviceId,interrCode)查詢?cè)O(shè)備信息失敗deviceId:目標(biāo)設(shè)備Id,errCode:查詢?cè)O(shè)備信息失敗的返回碼查詢用戶信息通過調(diào)用此方法查詢用戶信息參數(shù)參數(shù)說明phone待查詢用戶的手機(jī)號(hào)listList<String>中add需要查詢的用戶屬性字段,可查詢多個(gè)callback查詢用戶信息的回調(diào)示例代碼:ITAMachine.searchUserWithPhoneNum(phone,list,newITASearchUserWithPhoneNumResultCallback(){
@Override
publicvoidonSuccess(Bundlebundle){
}
@Override
publicvoidonFail(interrCode){
}
});回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess(Bundlebundle)查詢用戶信息成功bundle:所查詢的字段的key和valuevoidonFail(interrCode)查詢用戶信息失敗errCode:查詢?cè)O(shè)備信息失敗的返回碼上送用戶信息通過此方法上傳修改用戶信息參數(shù)參數(shù)說明mapMap類型Map<String,String>,key為待修改的屬性字段,value為待修改的內(nèi)容可同時(shí)設(shè)置多個(gè)屬性字段。callback上送用戶信息的回調(diào)代碼示例:ITAMachine.upDateUserInfo(map,newITAUpDateUserInfoResultCallback(){
@Override
publicvoidonSuccess(Bundlebundle){
}
@Override
publicvoidonFail(interrCode){
}
});回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess(Bundlebundle)上送用戶信息成功bundle:這里的bundle中只有一個(gè)key,user_versionvoidonFail(interrCode)上送用戶信息失敗errCode:上送用戶信息失敗的返回碼查詢?cè)O(shè)備歷史消息通過此方法查詢?cè)O(shè)備歷史信息參數(shù)參數(shù)說明deviceId待查詢用戶的手機(jī)號(hào)property需要查詢的設(shè)備屬性字段historyId需要查詢的消息id號(hào)第一條為0direction查詢的方向1向后0向前queryNum需要查詢消息的數(shù)量callback查詢?cè)O(shè)備歷史信息的回調(diào)代碼示例:ITAMachine.queryDeviceArgumentsHistoryById(guestDeviceId,"1","0","0","5",newITAQueryDeviceArgumentsHistoryByTimeResultCallback(){
@Override
publicvoidonSuccess(StringdeviceId,List<ITADeviceHistory>list){
}
@Override
publicvoidonFail(StringdeviceId,interrCode){
}
});回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess(StringdeviceId,List<ITADeviceHistory>list)查詢?cè)O(shè)備歷史信息成功deviceId:目標(biāo)設(shè)備唯一Id號(hào)list:這里是歷史消息的一個(gè)listvoidonFail(StringdeviceId,interrCode)查詢?cè)O(shè)備歷史信息失敗deviceId:目標(biāo)設(shè)備唯一Id號(hào)errCode:查詢?cè)O(shè)備歷史信息失敗的返回碼自定義方法:通過調(diào)用此方法可以實(shí)現(xiàn)在開發(fā)者中心設(shè)置的自定義TAG的方法參數(shù)參數(shù)說明tag自定義TAG號(hào)data自定義報(bào)文的報(bào)文體callback自定義報(bào)文的回調(diào)方法示例:ITAMachine.universalCommand(tag,data,newITAUniversalCommandResultCallback(){
@Override
publicvoidonSuccess(Stringdata,intserial){
}
@Override
publicvoidonFail(Stringdata,intserial){
}
});回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess(Stringdata,intserial)自定義報(bào)文發(fā)送成功data:返回的json字符串,serial:流水號(hào)voidonFail(Stringdata,intserisl)自定義報(bào)文發(fā)送失敗data:返回的json字符串,serial:流水號(hào)設(shè)備添加此方法用于添加設(shè)備Easylink方式添加參數(shù)參數(shù)說明ssid當(dāng)前連接wifi的ssidpassword當(dāng)前wifi的連接密碼deviceKey所搜索設(shè)備的devicekeycallback搜索設(shè)備的回調(diào)代碼示例:ITAMachine.udpSearchDevice(ssid,password,deviceKey,newITAUdpSearchResultCallback(){
@Override
publicvoidonSuccess(StringdeviceId){
}
@Override
publicvoidonFail(interrCode){
}
});回調(diào)接口說明回調(diào)方法參數(shù)說明voidonSuccess(StringdeviceId)找到設(shè)備deviceId:已找到設(shè)備Id號(hào)voidonFail(interrCode)未找到設(shè)備errCode:返回碼Esp方式添加參數(shù)參數(shù)說明wifiName當(dāng)前連接wifi的ssidwifiPassword當(dāng)前wifi的連接密碼deviceKey所搜索設(shè)備的devicekeycallback搜索設(shè)備的回調(diào)代碼示例:ITAMachine.espSearchDevice(wifiName,wifiPassword,deviceKey,Callback.convert(newUdpSearchResultCallback(){
@Override
publicvoidonSuccess(StringdeviceId){
LogUtil.i(TAG,"bindingdeviceid:"+deviceId);
}
@Override
publicvoidonFail(interrCode){
L
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- DB3707T 135-2025大蔥三系雜交制種技術(shù)規(guī)程
- 江西公路瀝青路面施工方案
- 馬尾松種植中發(fā)生的主要病蟲害及針對(duì)性防治方法的多角度分析
- 醫(yī)療機(jī)構(gòu)水污染物的監(jiān)測與檢測方法
- 穩(wěn)定和擴(kuò)大就業(yè)的背景與意義
- 就業(yè)質(zhì)量提升的路徑
- 2025年配網(wǎng)自動(dòng)化監(jiān)控項(xiàng)目合作計(jì)劃書
- 廣東省佛山市2017-2018學(xué)年高一上學(xué)期期末考試教學(xué)質(zhì)量檢測政治試題
- 浙江省臺(tái)州市2024-2025學(xué)年高二上學(xué)期期末質(zhì)量評(píng)估數(shù)學(xué)試題2
- 四川省棠湖中學(xué)2017-2018學(xué)年高二下學(xué)期開學(xué)考試語文試題
- 2024年蘇州市職業(yè)大學(xué)單招職業(yè)技能測試題庫及答案解析
- 銷售部廉政培訓(xùn)課件
- 幽門螺旋桿菌科普文
- 唯物史觀精華知識(shí)點(diǎn)總結(jié)
- 部隊(duì)保密安全教育課件
- 三八普法知識(shí)講座
- NB-T 47013.1-2015 承壓設(shè)備無損檢測 第1部分-通用要求
- 電纜隱蔽驗(yàn)收記錄文本20種
- 小班健康-阿嚏阿嚏
- 廣東省東莞市重點(diǎn)學(xué)校2024屆中考二模語文試題含解析
- (完整版)小學(xué)生心理健康教育課件
評(píng)論
0/150
提交評(píng)論