电子邮件提供商限制 - Android Studio App

时间:2016-07-03 05:08:01

标签: php android email

我在Android Studio上很新,我必须制作一个proyect,其中一个要求是注册应该包含一个电子邮件地址,我的问题是,是否可以在提供商中加入限制?只有以@ utem.edu.mx结尾的电子邮件才能注册,所以他们可以进一步登录吗?它应该与App和数据库的PHP连接?或者在Android Studio Activity中?

这是我的注册活动

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_register);

    final EditText etEmail = (EditText) findViewById(R.id.etEmail);
    final EditText etName = (EditText) findViewById(R.id.etName);
    final EditText etUsername = (EditText) findViewById(R.id.etUsername);
    final EditText etPassword = (EditText) findViewById(R.id.etPassword);
    final Button btnRegister = (Button) findViewById(R.id.btnRegister);

    btnRegister.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            final String name = etName.getText().toString();
            final String username = etUsername.getText().toString();
            final String password = etPassword.getText().toString();
            final String email = etEmail.getText().toString();

            Response.Listener<String> responseListener = new Response.Listener<String>(){

                @Override
                public void onResponse(String response) {
                    try {
                        JSONObject jsonResponse = new JSONObject(response);
                        boolean success = jsonResponse.getBoolean("success");

                        if (success){
                            Intent intent = new Intent(RegisterActivity.this, LoginActivity.class);
                            RegisterActivity.this.startActivity(intent);
                        } else {
                            AlertDialog.Builder builder = new AlertDialog.Builder(RegisterActivity.this);
                            builder.setMessage("Register Failed")
                                    .setNegativeButton("Retry",null)
                                    .create()
                                    .show();
                        }

                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                }
            };

            RegisterRequest registerRequest = new     RegisterRequest(name, username, email, password,responseListener);
            RequestQueue queue =     Volley.newRequestQueue(RegisterActivity.this);
            queue.add(registerRequest);



        }
    });

这是我的登记请求活动

private static final String REGISTER_REQUEST_URL = "http://ubisutem.site88.net/Register.php";
private Map<String, String> params;

public RegisterRequest(String name, String username, String email, String password, Response.Listener<String> listener){
    super(Method.POST,REGISTER_REQUEST_URL,listener, null);
    params = new HashMap<>();
    params.put("name", name);
    params.put("username", username);
    params.put("password", password);
    params.put("email", email + "");
}


@Override
public Map<String, String> getParams(){

    return params;
}

}

谢谢:D

1 个答案:

答案 0 :(得分:1)

始终检查服务器端的这些东西。如果您在客户端执行此操作,则被黑客入侵的客户端或Web浏览器仍然可以将错误数据发送到您的服务器,您将盲目地将其写入数据库。例如,如果客户发送的东西之一是价格,他们可以覆盖它以说它是免费的。因此,请务必检查服务器上的所有输入。

您实际上可以选择检查客户端和服务器 - 这是提高客户端应用程序响应能力的好选择。但是,不要只做客户端。