团队项目冲刺第6天

昨日成就:

 完成了登录功能

所遇困难:

 无

今日任务:

完成注册功能

 

package com.example.yunzhi;

import androidx.appcompat.app.AppCompatActivity;

import android.content.ContentValues;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.View;
import android.view.Window;
import android.widget.Button;
import android.widget.EditText;

import android.widget.Toast;


import java.util.regex.Matcher;
import java.util.regex.Pattern;

import cn.smssdk.EventHandler;
import cn.smssdk.SMSSDK;


public class RegisterActivity extends AppCompatActivity {
    private EditText ed_user, ed_password, ed_code;
    private Button button_code, button_register, back;
    public EventHandler eh; //事件接收器
    private TimeCount mTimeCount;//计时器
    private SQLiteDatabase writableDatabase;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_register);
        setTitle("注册");
        findBIld();
        setListener();
       init();



    }
    private void init() {
        eh = new EventHandler() {
            @Override
            public void afterEvent(int event, int result, Object data) {

                if (result == SMSSDK.RESULT_COMPLETE) { //回调完成

                    if (event == SMSSDK.EVENT_SUBMIT_VERIFICATION_CODE) { //提交验证码成功
                        add_user(ed_user.getText().toString(),ed_password.getText().toString());

                        startActivity(new Intent(RegisterActivity.this, CatalogActivity.class)); //页面跳转

                    } else if (event == SMSSDK.EVENT_GET_VERIFICATION_CODE) { //获取验证码成功

                    } else if (event == SMSSDK.EVENT_GET_SUPPORTED_COUNTRIES) { //返回支持发送验证码的国家列表

                    }
                } else {
                    ((Throwable) data).printStackTrace();
                }
            }
        };
        SMSSDK.registerEventHandler(eh); //注册短信回调
    }
    public void findBIld() {
        button_code = findViewById(R.id.bt_get_code);
        button_register = findViewById(R.id.bt_register);
        ed_user = findViewById(R.id.et_register_user);
        ed_password = findViewById(R.id.et_register_pwd);
        ed_code = findViewById(R.id.et_register_code);
        back = findViewById(R.id.iv_register_back);

        mTimeCount = new TimeCount(60000, 1000);

    }

    /**
     * 正则匹配手机号码
     *
     * @param tel
     * @return
     */
    public boolean checkTel(String tel) {
        Pattern p = Pattern.compile("^[1][3,4,5,7,8][0-9]{9}$");
        Matcher matcher = p.matcher(tel);
        return matcher.matches();
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        SMSSDK.unregisterEventHandler(eh);
    }

    /**
     * 计时器
     */
    class TimeCount extends CountDownTimer {

        public TimeCount(long millisInFuture, long countDownInterval) {
            super(millisInFuture, countDownInterval);
        }

        @Override
        public void onTick(long l) {
            button_code.setClickable(false);
            button_code.setText(l / 1000 + "秒后重新获取");
        }

        @Override
        public void onFinish() {
            button_code.setClickable(true);
            button_code.setText("获取验证码");
        }
    }





    //绑定事件
    private void setListener() {

        //获取验证码
       button_code.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                SMSSDK.getSupportedCountries();//获取短信目前支持的国家列表
                if (!ed_user.getText().toString().trim().equals("")) {
                    if (checkTel(ed_user.getText().toString().trim())) {
                        SMSSDK.getVerificationCode("+86", ed_user.getText().toString());//获取验证码
                        mTimeCount.start();
                    } else {
                        Toast.makeText(RegisterActivity.this, "请输入正确的手机号码", Toast.LENGTH_SHORT).show();
                    }
                } else {
                    Toast.makeText(RegisterActivity.this, "请输入手机号码", Toast.LENGTH_SHORT).show();
                }

            }
        });

        //注册
       button_register.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (!ed_user.getText().toString().trim().equals("")) {
                    if (checkTel(ed_user.getText().toString().trim())) {
                        if (!ed_code.getText().toString().trim().equals("")) {
                            SMSSDK.submitVerificationCode("+86", ed_user.getText().toString().trim(), ed_code.getText().toString().trim());//提交验证
                        } else {
                            Toast.makeText(RegisterActivity.this, "请输入验证码", Toast.LENGTH_SHORT).show();
                        }
                    } else {
                        Toast.makeText(RegisterActivity.this, "请输入正确的手机号码", Toast.LENGTH_SHORT).show();
                    }
                } else {
                    Toast.makeText(RegisterActivity.this, "请输入手机号码", Toast.LENGTH_SHORT).show();
                }

            }
        });

        back.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(RegisterActivity.this, MainActivity.class);//成功后跳转首页
                //finish();
                startActivity(intent);
            }
        });

    }

    //注册时增添新成员
    public void add_user(String id, String password) {

        MyOpenHelper dbHelper = new MyOpenHelper(this);
        writableDatabase = dbHelper.getWritableDatabase();
        //SQLiteDatabase db=helper.getWritableDatabase();
        ContentValues contentValues = new ContentValues();
        contentValues.put("user_id", id);
        contentValues.put("password", password);

        writableDatabase.insert("user", null, contentValues);
        writableDatabase.close();

    }
}
View Code

 

posted on 2021-05-03 20:08  桑榆非晚柠月如风  阅读(6)  评论(0编辑  收藏  举报