賬號及用戶SDK
賬號和用戶SDK提供了賬號能力,包括注冊、登錄、登出、獲取賬號、會話管理、人機校驗等功能,還提供了UI集成顯示、UI定制等能力。
依賴SDK | 概述 |
API通道 | 提供API通道能力 |
初始化
初始化的操作請參見SDK初始化。
內(nèi)置賬號
內(nèi)置賬號為生活物聯(lián)網(wǎng)平臺提供的賬號能力,您在客戶端集成后即可使用。包括以下內(nèi)容。
基礎功能
基礎功能包括:注冊、登錄、退出登錄、忘記密碼、注銷賬號等。
注冊
調(diào)用登錄頁面后,在登錄頁面內(nèi)會出現(xiàn)注冊和忘記密碼的功能,無需額外開發(fā)。
登錄
目前平臺已經(jīng)支持兩種登錄方式:賬號登錄、郵箱登錄。登錄頁面調(diào)起后,兩種登錄方式都可以使用。
LoginBusiness.login(new ILoginCallback() { @Override public void onLoginSuccess() { Log.i(TAG,"登錄成功"); } @Override public void onLoginFailed(int code, String error) { Log.i(TAG,"登錄失敗"); } });
退出登錄
LoginBusiness.logout(new ILogoutCallback() { @Override public void onLogoutSuccess() { Log.i(TAG,"登出成功"); } @Override public void onLogoutFailed(int code, String error) { Log.i(TAG,"登出失敗"); } });
忘記密碼
在調(diào)起登錄頁面后,在登錄頁面內(nèi)會出現(xiàn)注冊和忘記密碼的功能,無需額外開發(fā)。
注銷賬號
注銷賬號的時候,同時會把用戶綁定的設備都解除綁定關系,請參見注銷賬號。
修改個人信息
Map<String, Object> map = new LinkedHashMap<>(); map.put("displayName", newName); OpenAccountUIService oas = OpenAccountSDK.getService(OpenAccountUIService.class); oas.updateProfile(getApplicationContext(), map, new LoginCallback() { @Override public void onSuccess(OpenAccountSession openAccountSession) { } @Override public void onFailure(int i, String s) { } });
修改頭像
需要先將頭像圖片存儲到云端,獲取該圖片的URL,再用如下方式更新。
Map<String, Object> map = new LinkedHashMap<>(); map.put("avatarUrl", avatarUrl); OpenAccountUIService oas = OpenAccountSDK.getService(OpenAccountUIService.class); oas.updateProfile(getApplicationContext(), map, new LoginCallback() { @Override public void onSuccess(OpenAccountSession openAccountSession) { } @Override public void onFailure(int i, String s) { } });
刷新會話
LoginBusiness.refreshSession(true, new IRefreshSessionCallback() { @Override public void onRefreshSuccess() { Log.i(TAG,"刷新Session成功"); } @Override public void onRefreshFailed() { Log.i(TAG,"刷新Session失敗"); } });
獲取會話ID
添加以下代碼,獲取當前會話的ID號。
LoginBusiness.getSessionId();
獲取用戶信息
添加以下代碼,獲取當前登錄用戶的信息。
LoginBusiness.getUserInfo();
切換OA語言
Android App切換SDK語言時會同步切換OA的語言,您無需額外開發(fā)。切換SDK語言請參見通用SDK。
自定義登錄頁面
參照Demo App代碼里的SDKInitHelper類postInit方法來定制您的登錄頁面。獲取Demo App源碼請參見創(chuàng)建自有App。
自定義UI
三方自有賬號
在對接三方自有賬號之前,須先確認默認的賬號頁面(內(nèi)置賬號體系)可以正常注冊和登錄,并完成SDK的初始化。SDK初始化請參見SDK初始化。
選擇自有賬號通過OAuth 2.0協(xié)議接入,配置流程參見用戶賬號開發(fā)指南。
三方自有賬號在自有服務器上登錄成功之后,獲取Authorization Code(請參見用戶賬號開發(fā)指南),然后調(diào)用以下方法完成認證。
LoginBusiness.authCodeLogin(authCode, new ILoginCallback() {
@Override
public void onLoginSuccess() {
}
@Override
public void onLoginFailed(int i, String s) {
Log.d(TAG, "code: " + i + ", str: " + s);
}
});
在調(diào)用登錄或者登出接口時,直接調(diào)用LoginBusiness.login
和LoginBusiness.logout
兩個方法即可。