一.账号登录集成说明
1 帐号集成简介 注册云账号------》开通服务并创建应用------》账号集成
2.登录的两种模式
1.如果应用已经发布 并且用户较多 可以使用独立模式(账号的独立并不影响资料 关系链 群组的托管)
2.如果不想维护复杂的账号系统 托管模式可以快速的集成
独立模式:用户信息有开发和自己保存 用户身份的验证(注册 研密)都又开发者自己处理
托管模式:有腾讯提供用户的密码注册 验证 和存储,以及第三方的openid和token验证
注:集成模式选择后就不能再更改了 只能重走集成流程
3.公私钥
1.非对称加密中,公钥和私钥是成对出现的,用私钥加密的只能用公钥才能解开 同理,公钥加密的只有私钥此能解开
在开发中 公私钥用力判断用户身份的合法性
2.独立模式:
私钥存在开发者手中 , 开发者拥有公钥, 腾讯后台有公钥,开发者用私钥生成用户签名USersig,腾讯后台用公钥对
签名进行效验,
3.托管模式:
公钥存在开发者手中 , 开发者拥有私钥,腾讯使用私钥生成用户签名Usersig,开发者自己用公钥对签名进行效验
此时对于第三方账号不进行公私钥
二.登录(这里我们以独立模式为例)
1.我们说到独立模式 就会想到私钥在腾讯后台 开发者拿到的是公钥 腾讯后台拿私钥对用户进行Usersig签名,
2.首先我们进行 tls登录 拿到Usersig ------》进行第二次腾讯后台登录
- ILiveLoginManager.getInstance().tlsLogin(accountString, passwordString, new ILiveCallBack<String>() {
- @Override
- public void onSuccess(String data) {
- //tls登录成功
- loginlive(accountString,data);
- }
- @Override
- public void onError(String module, int errCode, String errMsg) {
- ToastUtils.show("登录失败");
- }
- });
看上面我们进行了tls登录 , 返回来的data就是我们的Usersig 然后我们进行第二次登录
- private void loginlive(String accountString, String data) {
- ILiveLoginManager.getInstance().iLiveLogin(accountString, data, new ILiveCallBack() {
- @Override
- public void onSuccess(Object data) {
- ToastUtils.show("登录成功");
- startActivity(new Intent(MainActivity.this, HomeActivity.class));
- getSelfInfo();
- }
- @Override
- public void onError(String module, int errCode, String errMsg) {
- }
- });
- }
这就是我们的登录流程,但是我们登录完之后还应该干点什么呢 ,? 没错 就是把用户的信息保存到我们applocation中 这样我们不管在哪里用到用户的信息的时候就可以很方便的获取到了
三。注册
1.注册流程- ILiveLoginManager.getInstance().tlsRegister(accountString, password, new ILiveCallBack() {
- @Override
- public void onSuccess(Object data) {
- ToastUtils.show("注册成功");
- login();
- }
- @Override
- public void onError(String module, int errCode, String errMsg) {
- ToastUtils.show("注册失败"+" "+errCode+" "+errMsg);
- }
- });
看我们的注册流程是非常简单的,当我们注册完以后就会发回来一个data,没错就是我们的usersig签名,那这个签名就可以进行登录,对,当我们注册完以后就得进行登录,并跳转到用户信息的修改界面,里面进行用户的修改头像,签名各种信息,头像上传用的是七牛云