android来电酷炫秀-注册,登录,找回密码

这段代码展示了三个关键操作:注册、登录和找回密码的实现。在注册过程中,检查了手机号、密码、验证码和协议确认;登录时,验证手机号和密码;找回密码则涉及验证码验证和新密码设置。所有操作均通过网络请求完成,并提供了错误处理和用户反馈。
摘要由CSDN通过智能技术生成

1.注册关键代码(RegisterActivity)

     switch (view.getId()) {
            case R.id.img_back:
                finish();
                break;
            case R.id.txt_service:
                Goto(ProtocolActivity.class);
                break;
            case R.id.txt_privde:
                Goto(YinsiActivity.class);
                break;
            case R.id.tv_get_sms_code:
                if (etSmsPhone.length() != 11) {
                    ToastUtils.showShort("请先输入11位手机号码");
                    break;
                }

                gettoken();


                break;
            case R.id.txt_resiger:

                if (isMobile(etSmsPhone.getText().toString().trim()) == false) {
                    ToastUtils.showShort("请输入正确的手机号");
                    return;
                }
                if (edtPass.getText().toString().trim().length() == 0) {
                    ToastUtils.showShort("请输入密码");
                    return;

                }
                if (etSmsCode.getText().toString().trim().length() == 0) {
                    ToastUtils.showShort("请输入验证码");
                    return;

                }
                if (edtPassagain.getText().toString().trim().length() == 0) {
                    ToastUtils.showShort("请再次输入密码");
                    return;

                }
                if (!edtPassagain.getText().toString().trim().equals(edtPass.getText().toString().trim())) {
                    ToastUtils.showShort("密码不一致");
                    return;

                }
/*                if (edtYaoqing.getText().toString().length() ==0) {
                    ToastUtils.showShort("请先输入邀请码");
                    break;
                }*/

                if (storeCheckBox.isChecked()==false){
                    ToastUtils.showShort("请同意相关协议");

                    break;
                }
                RxHttp.postForm("/register")
                        .add("mobileNo", etSmsPhone.getText().toString().trim())
                        .add("password", edtPass.getText().toString().trim())//登录  type=1用户, 2商家,, type=2时name必传
                        .add("smsCode", etSmsCode.getText().toString().trim())
                        .add("recommend",edtYaoqing.getText().toString())
                        .asObject(BaseMsgBean.class)
                        .as(RxLife.asOnMain(this))
                        .subscribe(new BaseObserver<BaseMsgBean>() {
                            @Override
                            public void onNext(BaseMsgBean codeBean) {
                                if (codeBean.getCode() == 0) {
                                    ToastUtils.showShort("注册成功");
                                    finish();
                                } else {
                                    ToastUtils.showShort(codeBean.getMsg());
                                }

                            }

                            @Override
                            public void onError(Throwable e) {
                                super.onError(e);
                                ToastUtils.showShort(e.getMessage());
                            }

                        });
                break;
        }

2.登录关键代码(LoginUserActivity)

@OnClick({R.id.img_back, R.id.txt_logain, R.id.txt_resiger, R.id.txt_forgot})
public void onViewClicked(View view) {
    switch (view.getId()) {
        case R.id.img_back:
            finish();
            break;
        case R.id.txt_logain:

            if (etSmsPhone.getText().toString().trim().length() == 0) {
                ToastUtils.showShort("请输入手机号");
                return;
            }
            if (edtPass.getText().toString().trim().length() == 0) {
                ToastUtils.showShort("请输入密码");
                return;

            }
            RxHttp.postForm("/login.do")
                    .add("loginName", etSmsPhone.getText().toString().trim())
                    .add("password", edtPass.getText().toString().trim())//登录  type=1用户, 2商家,, type=2时name必传
                    .asString()
                    .as(RxLife.asOnMain(this))
                    .subscribe(new BaseObserver<String>() {
                        @Override
                        public void onNext(String result) {
                            LoginBean codeBean = JsonUtil.fromJsonToEntity(result, LoginBean.class);
                            if (codeBean.getCode() == 0) {
                                EventBus.getDefault().post(new MainEbEntity(0));
                                ToastUtils.showShort("登录成功");
                                SPUtils.getInstance().put("TOKEN", codeBean.getData().getEasyfowitToken());
                                SPUtils.getInstance().put("phoneNum", etSmsPhone.getText().toString().trim());
                                ACache.get(Utils.getApp()).put("USER_BEAN", GsonUtils.toJson(codeBean));
                                finish();
                            } else {
                                ToastUtils.showShort(codeBean.getMsg());
                            }
                        }

                        @Override
                        public void onError(Throwable e) {
                            super.onError(e);
                            ToastUtils.showShort(e.getMessage());
                        }
                    });
            break;
        case R.id.txt_resiger:
            Goto(RegisterActivity.class);
            break;
        case R.id.txt_forgot:
            Goto(ForgetActivity.class);
            break;
    }
}

3.找回密码关键代码(ForgetActivity)

@OnClick({R.id.img_back, R.id.txt_service, R.id.txt_privde, R.id.tv_get_sms_code, R.id.txt_resiger})
public void onViewClicked(View view) {
    switch (view.getId()) {
        case R.id.img_back:
            finish();
            break;
        case R.id.txt_service:
            break;
        case R.id.txt_privde:
            break;
        case R.id.tv_get_sms_code:
            if (etSmsPhone.length() != 11) {
                ToastUtils.showShort("请先输入11位手机号码");
                break;
            }

            getcode("");

            break;
        case R.id.txt_resiger:

            if (edtPass.getText().toString().trim().length() == 0) {
                ToastUtils.showShort("请输入密码");
                return;

            }
            if (edtPassagain.getText().toString().trim().length() == 0) {
                ToastUtils.showShort("请再次输入密码");
                return;

            }
            if (!edtPassagain.getText().toString().trim().equals(edtPass.getText().toString().trim())) {
                ToastUtils.showShort("密码不一致");
                return;

            }
            changepass();
            break;
    }
}

public void gettoken() {
    RxHttp.get("/forgotPassword/token.json")
            .add("imie", "123456")
            .asObject(BaseMsgBean.class)
            .as(RxLife.asOnMain(this))
            .subscribe(new BaseObserver<BaseMsgBean>() {
                @Override
                public void onNext(BaseMsgBean codeBean) {
                    if (codeBean.getCode() == 0) {

                      //  ToastUtils.showShort(codeBean.getData().toString());
                        getcode(codeBean.getData().toString());
                    } else {
                        //  ToastUtils.showShort(codeBean.getMsg());
                    }
                }
            });
}

public void getcode(String token) {
    RxHttp.get("/sms/validate.do")
            .add("mobile", etSmsPhone.getText().toString().trim())
            .add("genre", 2)//验证方式1注册用户2忘记密码3微信绑定手机号
            //.add("token", token)

            .asObject(BaseMsgBean.class)
            .as(RxLife.asOnMain(this))
            .subscribe(new BaseObserver<BaseMsgBean>() {
                @Override
                public void onNext(BaseMsgBean codeBean) {
                    if (codeBean.getCode() == 0) {
                        ToastUtils.showShort("验证码已发送");
                        new CommonTimer(60 * 1000 + 200, 1000, tvGetSmsCode).start();
                    } else {
                        ToastUtils.showShort("修改失败");

                    }

                }

                @Override
                public void onError(Throwable e) {
                    super.onError(e);
                    //  ToastUtils.showShort("erro"+e);
                }
            });

}

public void changepass() {
    RxHttp.get("/reset-password")
            .add("mobile", etSmsPhone.getText().toString().trim())
            .add("password", edtPass.getText().toString().trim())//登录  type=1用户, 2商家,, type=2时name必传
            .add("smsCode", etSmsCode.getText().toString().trim())

            .asObject(BaseMsgBean.class)
            .as(RxLife.asOnMain(this))
            .subscribe(new BaseObserver<BaseMsgBean>() {
                @Override
                public void onNext(BaseMsgBean codeBean) {
                    if (codeBean.getCode() == 0) {
                        ToastUtils.showShort("修改成功");

                        finish();
                    } else {
                        // ToastUtils.showShort(codeBean.getMsg());
                    }

                }

                @Override
                public void onError(Throwable e) {
                    super.onError(e);
                    //  ToastUtils.showShort("erro"+e);
                }
            });

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值