团队项目冲刺第6天
昨日成就:
完成了登录功能
所遇困难:
无
今日任务:
完成注册功能
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
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(); } }