I have an activity with 2 EditText. When the user is clicking on the Send button, I want to send EditText value to my server. i tried to make a POST request when the user clicking on the button. The problem is when the user is clicking on the button He get a error, and the application closing automatically. This is my code:
import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; import com.google.firebase.iid.FirebaseInstanceId; import com.google.firebase.messaging.FirebaseMessaging; import java.io.IOException; import okhttp3.FormBody; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.RequestBody; public class register extends AppCompatActivity { private EditText nameE,l_nameE; private Button registerE; private String name,l_name,token; boolean thread_running = true; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_register); FirebaseMessaging.getInstance().subscribeToTopic("test"); token = FirebaseInstanceId.getInstance().getToken(); Toast.makeText(this, token, Toast.LENGTH_LONG).show(); final Button register = (Button)findViewById(R.id.button); nameE = (EditText)findViewById(R.id.editText); l_nameE = (EditText)findViewById(R.id.editText2); register.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { registerToken(); } }); } public void intialize(){ name = nameE.getText().toString().trim(); l_name = l_nameE.getText().toString().trim(); } public boolean validate(){ boolean e=true; if(name.equals("")){ e=false; nameE.setError("enter name"); }else if(l_name.equals("")){ e=false; l_nameE.setError("enter l_name"); } return e; } private void registerToken() { intialize(); if (!validate()) { Toast.makeText(this, "err", Toast.LENGTH_LONG).show(); }else{ reg(); } } public void reg(){ Toast.makeText(this, "reg", Toast.LENGTH_LONG).show(); OkHttpClient client = new OkHttpClient(); RequestBody body = new FormBody.Builder() .add("name",name) .add("l_name",l_name) .build(); Request request = new Request.Builder() .url("http://192.168.0.106/fcm/register.php") .post(body) .build(); try { client.newCall(request).execute(); } catch (IOException e) { e.printStackTrace(); } } } thank you