public interface MSmartUserManager extends MSmartKeyDefine, MSmartConstant
本类提供了用户注册登陆以及管理相关的接口。
异步接口如果请求失败,会返回错误码和错误信息,错误信息为英文提示。
KEY_ACCEPT, KEY_APP_VERSION, KEY_CONTENT, KEY_CURRENT_STEP, KEY_DATA, KEY_DEVICE_DES, KEY_DEVICE_ID, KEY_DEVICE_IP, KEY_DEVICE_IS_ACTIVATED, KEY_DEVICE_IS_ADDED, KEY_DEVICE_IS_ONLINE, KEY_DEVICE_IS_SECRET_SET, KEY_DEVICE_MAC, KEY_DEVICE_NAME, KEY_DEVICE_NEW_FAMILY_ID, KEY_DEVICE_NEW_FAMILY_NUMBER, KEY_DEVICE_OLD_FAMILY_ID, KEY_DEVICE_OLD_FAMILY_NUMBER, KEY_DEVICE_SN, KEY_DEVICE_SSID, KEY_DEVICE_SUB_TYPE, KEY_DEVICE_TSN, KEY_DEVICE_TYPE, KEY_DEVICE_TYPE_NAME, KEY_FAMILY_ADDRESS, KEY_FAMILY_BG, KEY_FAMILY_COORDINATE, KEY_FAMILY_CREATE_TIME, KEY_FAMILY_DESCRIPTION, KEY_FAMILY_ID, KEY_FAMILY_MEMBER_ACCOUNT, KEY_FAMILY_MEMBER_ID, KEY_FAMILY_NAME, KEY_FAMILY_NUMBER, KEY_FAMILY_OWNER_EMAIL, KEY_FAMILY_OWNER_MOBILE, KEY_FAMILY_OWNER_NICKNAME, KEY_FIRMWARE_INFO, KEY_FIRMWARE_URL, KEY_IS_DEFAULT_FAMILY, KEY_IS_DEVICE_OWNER, KEY_IS_FAMILY_OWNER, KEY_NEED_USER_OPERATION, KEY_NEW_OWNER_ACCOUNT, KEY_NEW_OWNER_ID, KEY_OLD_OWNER_ACCOUNT, KEY_OLD_OWNER_ID, KEY_OTA_CREATE_TIME, KEY_OTA_NEW_VERSION, KEY_OTA_PACKAGE_DESC, KEY_OTA_PACKAGE_SIZE, KEY_OTA_RULE, KEY_OTA_TYPE, KEY_OTA_VERSION, KEY_OWNER_ACCOUNT, KEY_OWNER_ID, KEY_PHONE_MODEL, KEY_PHONE_SYSTEM_VERSION, KEY_PROFILE_PHOTO, KEY_PUSH_CONTENT, KEY_PUSH_TOKEN, KEY_PUSH_TYPE, KEY_QR_CODE, KEY_RANDOM_STR, KEY_ROUTER_SSID, KEY_STEP_NAME, KEY_SUB_ACCOUNT, KEY_THIRD_NICK_NAME, KEY_TIPS, KEY_TOTAL_STEP, KEY_USER_ACCOUNT, KEY_USER_ADDRESS, KEY_USER_AGE, KEY_USER_EMAIL, KEY_USER_ID, KEY_USER_MOBILE, KEY_USER_NAME, KEY_USER_NICKNAME, KEY_USER_PHONE, KEY_USER_REGISTER_TIME, KEY_USER_SEX, KEY_USER_SIGN
CONFIGURE_TYPE_AP, CONFIGURE_TYPE_MSC, CONFIGURE_TYPE_ONE_AP, CONFIGURE_TYPE_ONE_MSC, CONFIGURE_TYPE_UNKNOWN, GENDER_FEMALE, GENDER_MALE, VERIFY_CODE_TYPE_REGISTER, VERIFY_CODE_TYPE_RESET_PWD, VERIFY_CODE_TYPE_UPDATE_MOBILE
Modifier and Type | Method and Description |
---|---|
void |
bindSubAccount(String uuid,
String subAccount,
MSmartCallback callback)
更新推送token值.
|
void |
checkSubAccountState(String uuid,
String subAccount,
String randomStr,
MSmartDataCallback<android.os.Bundle> callback)
检查子账号是否被绑定.
|
void |
createSubAccount(String uuid,
MSmartDataCallback<android.os.Bundle> callback)
创建子账号.
|
String |
getUserID()
获取登陆用户ID.
|
void |
getUserInfo(MSmartDataCallback<android.os.Bundle> callback)
获取登陆用户的详细信息.
|
void |
getVerifyCodeBySMS(String mobileNum,
String type,
MSmartCallback callback)
获取短信验证码.
|
void |
loginWithAccount(String account,
String password,
android.os.Bundle extraData,
MSmartCallback callback)
用户登陆.
|
void |
loginWithMideaAccount(String account,
String password,
String thirdToken,
MSmartCallback callback)
美家账号登陆.
|
void |
loginWithSubAccount(String uuid,
String userID,
String subAccount,
MSmartCallback callback)
登陆子账号.
|
void |
loginWithThirdAccessToken(String accessToken,
String openID,
int thirdSrc,
android.os.Bundle extraData,
MSmartCallback callback)
第三方开放账号体系登陆接口.
|
void |
logout()
退出登录.
|
void |
modifyPassword(String oldPassword,
String newPassword,
MSmartCallback callback)
修改密码.
|
void |
modifyUserInfo(String nickName,
boolean male,
String age,
String address,
String phone,
String signature,
MSmartCallback callback)
修改用户信息.
|
void |
modifyUserMobile(String password,
String newMobile,
String verifyCode,
MSmartCallback callback)
修改用户绑定手机.
|
void |
registerWithEmail(String email,
String password,
String nickName,
MSmartCallback callback)
邮箱注册账号.
|
void |
registerWithMideaAccount(String account,
String password,
String nickName,
String thirdToken,
MSmartCallback callback)
第三方注册美居账号.
|
void |
registerWithMobileNum(String mobileNum,
String password,
String verifyCode,
String nickName,
MSmartCallback callback)
手机号注册账号.
|
void |
resetPwdByEmail(String loginAccount,
MSmartCallback callback)
邮箱重置密码.
|
void |
resetPwdByMobile(String mobile,
String verifyCode,
String newPassword,
MSmartCallback callback)
手机号重置密码.
|
void |
searchUserByAccount(String userAccount,
MSmartDataCallback<android.os.Bundle> callback)
通过用户账号查询用户.
|
void |
updatePushToken(String pushToken,
MSmartCallback callback)
更新推送token值.
|
void |
updateUserSession(MSmartCallback callback)
刷新用户session.
|
void |
uploadUserProfilePhoto(String picPath,
MSmartDataCallback<android.os.Bundle> callback)
上传用户头像.
|
void getVerifyCodeBySMS(String mobileNum, String type, MSmartCallback callback)
请求成功后,对应手机随后会收到验证码短信,参数type的可取值类型:
验证码类型 | 常量 | 值 |
---|---|---|
注册 | MSmartConstant.VERIFY_CODE_TYPE_REGISTER | 1 |
重置密码 | MSmartConstant.VERIFY_CODE_TYPE_RESET_PWD | 2 |
更新手机号 | MSmartConstant.VERIFY_CODE_TYPE_UPDATE_MOBILE | 3 |
mobileNum
- 用户手机号type
- 短信验证码类型, 1为注册,2为修改密码,3为绑定手机callback
- 回调void registerWithMobileNum(String mobileNum, String password, String verifyCode, String nickName, MSmartCallback callback)
注册之前调用getVerifyCodeBySMS(String, String, MSmartCallback)
获取验证码,验证码将作为初始密码
密码长度:6~12位有效.
mobileNum
- 手机号password
- 密码verifyCode
- 验证码nickName
- 用户昵称callback
- 回调getVerifyCodeBySMS(String, String, MSmartCallback)
,
registerWithEmail(String, String, String, MSmartCallback)
void registerWithEmail(String email, String password, String nickName, MSmartCallback callback)
密码长度:6~12位有效
email
- 邮箱password
- 密码nickName
- 用户昵称callback
- 回调registerWithMobileNum(String, String, String, String, MSmartCallback)
void registerWithMideaAccount(String account, String password, String nickName, String thirdToken, MSmartCallback callback)
account
- 用户手机号或者邮箱password
- 登陆密码nickName
- 用户昵称thirdToken
- 第三方tokencallback
- 回调void loginWithAccount(String account, String password, android.os.Bundle extraData, MSmartCallback callback)
不同的登陆方式,extraData的内容不同。
键 | 常量 | 值类型 | 说明 |
---|---|---|---|
pushToken | MSmartKeyDefine.KEY_PUSH_TOKEN | String | 推送Toke |
phoneModel | MSmartKeyDefine.KEY_PHONE_MODEL | String | 手机型号 |
phoneSysVNum | MSmartKeyDefine.KEY_PHONE_SYSTEM_VERSION | String | 手机操作系统版本号 |
appVNum | MSmartKeyDefine.KEY_APP_VERSION | String | APP的版本号 |
pushType | MSmartKeyDefine.KEY_PUSH_TYPE | String | 推送类型。1:MPUSH,2:JPUSH 4:Google推送 |
account
- 账号:手机号或邮箱password
- 登录密码extraData
- 登陆附带的参数callback
- 回调void loginWithThirdAccessToken(String accessToken, String openID, int thirdSrc, android.os.Bundle extraData, MSmartCallback callback)
键 | 常量 | 值类型 | 说明 |
---|---|---|---|
pushToken | MSmartKeyDefine.KEY_PUSH_TOKEN | String | 推送Toke |
phoneModel | MSmartKeyDefine.KEY_PHONE_MODEL | String | 手机型号 |
phoneSysVNum | MSmartKeyDefine.KEY_PHONE_SYSTEM_VERSION | String | 手机操作系统版本号 |
appVNum | MSmartKeyDefine.KEY_APP_VERSION | String | APP的版本号 |
thirdNickName | MSmartKeyDefine.KEY_THIRD_NICK_NAME | String | 用户名称 |
accessToken
- 第三方访问授权TokenopenID
- 第三方来源IDthirdSrc
- 第三方来源标识extraData
- 登陆附带的参数callback
- 回调void loginWithMideaAccount(String account, String password, String thirdToken, MSmartCallback callback)
account
- 用户手机号或者邮箱password
- 登录密码thirdToken
- 第三方tokencallback
- 回调void logout()
退出以后,SDK的接口将不可以继续调用。
String getUserID()
未登陆返回null。
void getUserInfo(MSmartDataCallback<android.os.Bundle> callback)
键 | 常量 | 值类型 | 说明 |
---|---|---|---|
userID | MSmartKeyDefine.KEY_USER_ID | String | 用户ID |
userNickName | MSmartKeyDefine.KEY_USER_NICKNAME | String | 用户昵称 |
userMobile | MSmartKeyDefine.KEY_USER_MOBILE | String | 手机号 |
userEmail | MSmartKeyDefine.KEY_USER_EMAIL | String | 邮箱 |
userSex | MSmartKeyDefine.KEY_USER_SEX | String | 性别 |
userAge | MSmartKeyDefine.KEY_USER_AGE | String | 年龄 |
userAddress | MSmartKeyDefine.KEY_USER_ADDRESS | String | 地址 |
userPhone | MSmartKeyDefine.KEY_USER_PHONE | String | 电话 |
profilePicUrl | MSmartKeyDefine.KEY_PROFILE_PHOTO | String | 头像 |
userSignature | MSmartKeyDefine.KEY_USER_SIGN | String | 签名 |
callback
- 回调void resetPwdByEmail(String loginAccount, MSmartCallback callback)
请求成功以后,邮箱会收到密码重置的邮件。
loginAccount
- 邮箱callback
- 回调void resetPwdByMobile(String mobile, String verifyCode, String newPassword, MSmartCallback callback)
重置密码需要调用getVerifyCodeBySMS(String, String, MSmartCallback)
获取验证码
mobile
- 手机号verifyCode
- 短信验证码newPassword
- 新密码callback
- 回调getVerifyCodeBySMS(String, String, MSmartCallback)
void modifyPassword(String oldPassword, String newPassword, MSmartCallback callback)
oldPassword
- 原密码newPassword
- 新密码callback
- 回调void searchUserByAccount(String userAccount, MSmartDataCallback<android.os.Bundle> callback)
这个是精确搜索,必须输入正确完整的用户账号(邮箱或者手机号)。
请求成功会返回用户列表,Bundle中用户的信息如下:
键 | 常量 | 值类型 | 说明 |
---|---|---|---|
userID | MSmartKeyDefine.KEY_USER_ID | String | 用户ID |
userNickName | MSmartKeyDefine.KEY_USER_NICKNAME | String | 用户昵称 |
userMobile | MSmartKeyDefine.KEY_USER_MOBILE | String | 手机号 |
userEmail | MSmartKeyDefine.KEY_USER_EMAIL | String | 邮箱 |
userSex | MSmartKeyDefine.KEY_USER_SEX | String | 性别 |
userAge | MSmartKeyDefine.KEY_USER_AGE | String | 年龄 |
userAddress | MSmartKeyDefine.KEY_USER_ADDRESS | String | 地址 |
userPhone | MSmartKeyDefine.KEY_USER_PHONE | String | 电话 |
userRegisterTime | MSmartKeyDefine.KEY_USER_REGISTER_TIME | String | 注册时间 |
profilePicUrl | MSmartKeyDefine.KEY_PROFILE_PHOTO | String | 头像 |
userSignature | MSmartKeyDefine.KEY_USER_SIGN | String | 签名 |
userAccount
- 账号callback
- 回调void modifyUserMobile(String password, String newMobile, String verifyCode, MSmartCallback callback)
修改用户绑定手机需要调用getVerifyCodeBySMS(String, String, MSmartCallback)
获取验证码
验证码会发送到新手机号上。
password
- 密码newMobile
- 手机号verifyCode
- 验证码callback
- 回调getVerifyCodeBySMS(String, String, MSmartCallback)
void updateUserSession(MSmartCallback callback)
避免用户登陆过期。用户Session过期时间:2小时 如果失败需要重新登陆,建议每次后台进入前台就重新刷一下。
callback
- 回调void modifyUserInfo(String nickName, boolean male, String age, String address, String phone, String signature, MSmartCallback callback)
用户仅可以修改自己的信息
nickName
- 用户名male
- 性别,是否为男age
- 年龄address
- 地址phone
- 固定电话signature
- 签名callback
- 回调void uploadUserProfilePhoto(String picPath, MSmartDataCallback<android.os.Bundle> callback)
picPath
- 头像本地路径callback
- 回调void updatePushToken(String pushToken, MSmartCallback callback)
如果登陆的时候没有上传推送的Token(pushToken),登陆成功后可以再上传。
pushToken
- 推送Tokencallback
- 回调void bindSubAccount(String uuid, String subAccount, MSmartCallback callback)
uuid
- 标识设备唯一性的IDsubAccount
- 子账号callback
- 回调void createSubAccount(String uuid, MSmartDataCallback<android.os.Bundle> callback)
键 | 常量 | 值类型 | 说明 |
---|---|---|---|
subAccount | MSmartKeyDefine.KEY_SUB_ACCOUNT | String | 子账号名称 |
randomStr | MSmartKeyDefine.KEY_RANDOM_STR | String | 密钥 |
qrCode | MSmartKeyDefine.KEY_QR_CODE | String | 二维码 |
uuid
- 标识设备唯一性的IDcallback
- 回调void checkSubAccountState(String uuid, String subAccount, String randomStr, MSmartDataCallback<android.os.Bundle> callback)
键 | 常量 | 值类型 | 说明 |
---|---|---|---|
userID | MSmartKeyDefine.KEY_USER_ID | String | 主账号ID |
uuid
- 标识设备唯一性的IDsubAccount
- 子账号randomStr
- 随机串callback
- 回调void loginWithSubAccount(String uuid, String userID, String subAccount, MSmartCallback callback)
uuid
- 标识设备唯一性的IDuserID
- 主账号用户IDsubAccount
- 子账号callback
- 回调