注册/登录接口联调
This commit is contained in:
@@ -79,6 +79,7 @@ public class LoginActivity extends BaseActivity<LoginLayoutBinding, LoginPresent
|
||||
setClick(viewBinding.tvGoRegister);
|
||||
setClick(viewBinding.tvLanguage);
|
||||
setClick(viewBinding.tvResetPsd);
|
||||
setClick(viewBinding.checkboxRead);
|
||||
}
|
||||
|
||||
private void setClick(View view) {
|
||||
@@ -86,59 +87,74 @@ public class LoginActivity extends BaseActivity<LoginLayoutBinding, LoginPresent
|
||||
}
|
||||
|
||||
private void setupAgreementText() {
|
||||
String prefix = getString(R.string.login_agreement_prefix);
|
||||
String privacy = getString(R.string.login_privacy_policy);
|
||||
String and = getString(R.string.login_and);
|
||||
String userAgreement = getString(R.string.login_user_agreement);
|
||||
String content = prefix + privacy + and + userAgreement;
|
||||
//勾选协议,增加点击区域
|
||||
ClickUtil.addClickPart(viewBinding.checkboxRead,100);
|
||||
TextView tvAgreement = findViewById(R.id.tv_agreement_full);
|
||||
String content = "我已经阅读并同意智能浇灌《用户协议》、《隐私政策》";
|
||||
|
||||
SpannableString spannableString = new SpannableString(content);
|
||||
|
||||
int privacyStart = prefix.length();
|
||||
int privacyEnd = privacyStart + privacy.length();
|
||||
ClickableSpan privacyPolicySpan = new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View widget) {
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putInt("from_requse_code", WebviewUserAgreement.PRIVACY_CODE);
|
||||
goToWihoutNoPresent(mContext, WebviewUserAgreement.class, bundle);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateDrawState(@NonNull TextPaint ds) {
|
||||
super.updateDrawState(ds);
|
||||
ds.setColor(ContextCompat.getColor(mContext, R.color.color_zhu));
|
||||
ds.setUnderlineText(false);
|
||||
}
|
||||
};
|
||||
spannableString.setSpan(privacyPolicySpan, privacyStart, privacyEnd, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
|
||||
int userStart = privacyEnd + and.length();
|
||||
int userEnd = userStart + userAgreement.length();
|
||||
// 设置“用户协议”可点击
|
||||
ClickableSpan userAgreementSpan = new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View widget) {
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putInt("from_requse_code", WebviewUserAgreement.AGREEMENT_CODE);
|
||||
goToWihoutNoPresent(mContext, WebviewUserAgreement.class, bundle);
|
||||
// 跳转用户协议
|
||||
// Bundle bundle = new Bundle();
|
||||
// bundle.putInt("from_requse_code", WebviewUserAgreement.AGREEMENT_CODE);
|
||||
// goToWihoutNoPresent(mContext, WebviewUserAgreement.class,bundle);
|
||||
ToastUtil.showShort(mContext,"用户协议");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateDrawState(@NonNull TextPaint ds) {
|
||||
super.updateDrawState(ds);
|
||||
ds.setColor(ContextCompat.getColor(mContext, R.color.color_zhu));
|
||||
ds.setColor(ContextCompat.getColor(mContext, R.color.color_zhu)); // 设置颜色
|
||||
ds.setUnderlineText(false); // 去掉下划线
|
||||
}
|
||||
};
|
||||
int start1 = content.indexOf("《用户协议》");
|
||||
int end1 = start1 + "《用户协议》".length();
|
||||
spannableString.setSpan(userAgreementSpan, start1, end1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
|
||||
// 设置“隐私政策”可点击
|
||||
ClickableSpan privacyPolicySpan = new ClickableSpan() {
|
||||
@Override
|
||||
public void onClick(@NonNull View widget) {
|
||||
// 跳转隐私政策
|
||||
// Bundle bundleYS = new Bundle();
|
||||
// bundleYS.putInt("from_requse_code",WebviewUserAgreement.PRIVACY_CODE);
|
||||
// goToWihoutNoPresent(mContext, WebviewUserAgreement.class,bundleYS);
|
||||
ToastUtil.showShort(mContext,"跳转隐私政策");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateDrawState(@NonNull TextPaint ds) {
|
||||
super.updateDrawState(ds);
|
||||
ds.setColor(ContextCompat.getColor(mContext, R.color.color_zhu)); // 设置颜色
|
||||
ds.setUnderlineText(false);
|
||||
}
|
||||
};
|
||||
spannableString.setSpan(userAgreementSpan, userStart, userEnd, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
int start2 = content.indexOf("《隐私政策》");
|
||||
int end2 = start2 + "《隐私政策》".length();
|
||||
spannableString.setSpan(privacyPolicySpan, start2, end2, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
||||
|
||||
// viewBinding.tvAgreement.setText(spannableString);
|
||||
// viewBinding.tvAgreement.setMovementMethod(LinkMovementMethod.getInstance());
|
||||
tvAgreement.setText(spannableString);
|
||||
tvAgreement.setMovementMethod(LinkMovementMethod.getInstance()); // 开启点击事件
|
||||
}
|
||||
|
||||
public void onClick(View v) {
|
||||
switch (v.getId()) {
|
||||
|
||||
case R.id.checkbox_read:
|
||||
if(mYinsiConfirm){
|
||||
mYinsiConfirm = false;
|
||||
viewBinding.checkboxRead.setChecked(false);
|
||||
}else{
|
||||
mYinsiConfirm = true;
|
||||
viewBinding.checkboxRead.setChecked(true);
|
||||
}
|
||||
break;
|
||||
|
||||
case R.id.tv_go_register:
|
||||
goTo(mContext, RegisterActivity.class,null);
|
||||
break;
|
||||
@@ -215,33 +231,40 @@ public class LoginActivity extends BaseActivity<LoginLayoutBinding, LoginPresent
|
||||
// viewBinding.checkboxRead.setChecked(true);
|
||||
// }
|
||||
// break;
|
||||
// case R.id.tv_login_confirm:
|
||||
// if (TextUtils.isEmpty(viewBinding.edPhoneInput.getText().toString())) {
|
||||
// ToastUtil.showShort(mContext, getString(R.string.login_error_phone_empty));
|
||||
// return;
|
||||
// }
|
||||
// if (!PhoneNumberUtils.checkPhoneNum(viewBinding.edPhoneInput.getText().toString().trim())) {
|
||||
// ToastUtil.showShort(mContext, getString(R.string.login_error_phone_invalid));
|
||||
// return;
|
||||
// }
|
||||
// if (TextUtils.isEmpty(viewBinding.edCodeInput.getText().toString())) {
|
||||
// ToastUtil.showShort(mContext, getString(R.string.login_error_code_empty));
|
||||
// return;
|
||||
// }
|
||||
// if (viewBinding.edCodeInput.getText().toString().trim().length() < 6) {
|
||||
// ToastUtil.showShort(mContext, getString(R.string.login_error_code_invalid));
|
||||
// return;
|
||||
// }
|
||||
// if (!mYinsiConfirm) {
|
||||
// ToastUtil.showShort(mContext, getString(R.string.login_error_agreement));
|
||||
// return;
|
||||
// }
|
||||
// showLoadingDialog();
|
||||
// mPresenter.loginBySmsCode(
|
||||
// viewBinding.edPhoneInput.getText().toString().trim(),
|
||||
// viewBinding.edCodeInput.getText().toString().trim());
|
||||
case R.id.tv_login:
|
||||
if (TextUtils.isEmpty(viewBinding.etAccount.getText().toString())) {
|
||||
ToastUtil.showShort(mContext, getString(R.string.login_error_phone_empty));
|
||||
return;
|
||||
}
|
||||
if (!PhoneNumberUtils.checkPhoneNum(viewBinding.etAccount.getText().toString().trim()) &&
|
||||
!PhoneNumberUtils.checkEmail(viewBinding.etAccount.getText().toString().trim())) {
|
||||
ToastUtil.showShort(mContext, getString(R.string.login_error_phone_invalid));
|
||||
return;
|
||||
}
|
||||
if (TextUtils.isEmpty(viewBinding.edCodeInput.getText().toString())) {
|
||||
ToastUtil.showShort(mContext, getString(R.string.login_error_code_empty));
|
||||
return;
|
||||
}
|
||||
if (viewBinding.edCodeInput.getText().toString().trim().length() < 6) {
|
||||
ToastUtil.showShort(mContext, getString(R.string.login_error_code_invalid));
|
||||
return;
|
||||
}
|
||||
if (!mYinsiConfirm) {
|
||||
ToastUtil.showShort(mContext, getString(R.string.login_error_agreement));
|
||||
return;
|
||||
}
|
||||
String loginType = "sms";
|
||||
if(LOGIN_TYPE_STATUS_CODE == 100){
|
||||
loginType = "sms";
|
||||
}else{
|
||||
loginType = "password";
|
||||
}
|
||||
showLoadingDialog();
|
||||
mPresenter.loginBySmsCode(loginType,
|
||||
viewBinding.etAccount.getText().toString().trim(),
|
||||
viewBinding.edCodeInput.getText().toString().trim());
|
||||
// new Handler().postDelayed(() -> hideDialogLoading(), 1000);
|
||||
// break;
|
||||
break;
|
||||
|
||||
|
||||
}
|
||||
@@ -267,6 +290,11 @@ public class LoginActivity extends BaseActivity<LoginLayoutBinding, LoginPresent
|
||||
}
|
||||
};
|
||||
|
||||
@Override
|
||||
public void registerSuccess(BaseBean bean) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getPhoneCodeSuccess(BaseBean bean) {
|
||||
hideDialogLoading();
|
||||
@@ -278,18 +306,18 @@ public class LoginActivity extends BaseActivity<LoginLayoutBinding, LoginPresent
|
||||
public void loginBySmsCodeSuccess(LoginEntity entity) {
|
||||
hideDialogLoading();
|
||||
ToastUtil.showShort(mContext, getString(R.string.login_success));
|
||||
SharePreUtil.putBoolean(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_LOGIN, true);
|
||||
SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_TOKEN, entity.getAccess_token());
|
||||
SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_NICKNAME, entity.getUser_info().getNickname());
|
||||
SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_ID, String.valueOf(entity.getUser_info().getUserId()));
|
||||
MingDengUserInfoManager.getInstance().setEntity(entity);
|
||||
MingDengUserInfoManager.getInstance().setUserInfo(entity.getUser_info());
|
||||
Gson gson = new Gson();
|
||||
String userInfoJson = gson.toJson(entity);
|
||||
SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_INFO_JSON_CONTENT, userInfoJson);
|
||||
AppConfig.USER_LOGIN = true;
|
||||
AppConfig.USER_TOKEN = entity.getAccess_token();
|
||||
AppConfig.USER_ID = String.valueOf(entity.getUser_info().getUserId());
|
||||
// SharePreUtil.putBoolean(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_LOGIN, true);
|
||||
// SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_TOKEN, entity.getAccess_token());
|
||||
// SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_NICKNAME, entity.getUser_info().getNickname());
|
||||
// SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_ID, String.valueOf(entity.getUser_info().getUserId()));
|
||||
// MingDengUserInfoManager.getInstance().setEntity(entity);
|
||||
// MingDengUserInfoManager.getInstance().setUserInfo(entity.getUser_info());
|
||||
// Gson gson = new Gson();
|
||||
// String userInfoJson = gson.toJson(entity);
|
||||
// SharePreUtil.putString(ConstantUtil.SHARE_PRE_NAME, mContext, ConstantUtil.USER_INFO_JSON_CONTENT, userInfoJson);
|
||||
// AppConfig.USER_LOGIN = true;
|
||||
// AppConfig.USER_TOKEN = entity.getAccess_token();
|
||||
// AppConfig.USER_ID = String.valueOf(entity.getUser_info().getUserId());
|
||||
new Handler().postDelayed(() -> {
|
||||
goTo(mContext, MainActivity.class, null);
|
||||
finish();
|
||||
|
||||
Reference in New Issue
Block a user