Как правильно сохранить данные на размещенном сервере в android?
я разработал простую систему входа пользователя в систему с регистрацией.
я ссылался на несколько сайтов для разработки этого?
но я не могу правильно определить проблему?
это и есть моя ошибка?
после того как я скомпилировал его и когда я набираю daa в текстовых полях,
он покажет ниже ошибку?
W/IInputConnectionWrapper: finishComposingText on inactive InputConnection
это другие ошибки, которые я получаю?
W/System. err: org.json.JSONException: Value <br типа java.lang.Строка не может быть преобразована в JSONObject
Ж/Системы.ошибка: при орг.в формате JSON.В формате JSON.typeMismatch(в формате JSON.Ява:111)
Ж/Системы.ошибка: при орг.в формате JSON.JSONObject.&ЛТ;инициализации и GT;(JSONObject.Ява:160)
Ж/Системы.ошибка: при орг.в формате JSON.JSONObject.&ЛТ;инициализации и GT;(JSONObject.Ява:173)
Ж/Системы.ошибка: на ком.Хема.virtualfoods.RegisterActivity$1$1. onResponse(RegisterActivity. java:45)
ком.Хема.virtualfoods ж/системы.ошибка: на ком.Хема.virtualfoods.RegisterActivity$1$1. onResponse(RegisterActivity. java:39)
ком.Хема.virtualfoods ж/системы.ошибка: на ком.андроид.волейбол.элементов.StringRequest.deliverResponse(StringRequest. java: 60)
ком.Хема.virtualfoods ж/системы.ошибка: на ком.андроид.волейбол.элементов.StringRequest.deliverResponse(StringRequest. java: 30)
ком.Хема.virtualfoods ж/системы.ошибка: на ком.андроид.волейбол.ExecutorDelivery$ResponseDeliveryRunnable. run(ExecutorDelivery. java: 99)
ком.Хема.virtualfoods ж/системы.ошибка: на Андроид.ОС.Обработчик.handleCallback(обработчика.Ява:751)
ком.Хема.virtualfoods ж/системы.ошибка: на Андроид.ОС.Обработчик.dispatchMessage(обработчика.Ява:95)
ком.Хема.virtualfoods ж/системы.ошибка: на Андроид.ОС."Петля времени".петли(лупер.Ява:154)
ком.Хема.virtualfoods ж/системы.ошибка: на Андроид.приложение.ActivityThread.основной(ActivityThread.Ява:6077)
ком.Хема.virtualfoods ж/системы.ошибка: в Java.яз.отразить.Метод.вызов(родной способ)
ком.Хема.virtualfoods ж/системы.ошибка: на ком.андроид.внутренние.ОС.ZygoteInit$MethodAndArgsCaller.запустить(ZygoteInit.Ява:865)
ком.Хема.virtualfoods ж/системы.ошибка: на ком.андроид.внутренние.ОС.ZygoteInit.основной(ZygoteInit.Ява:755)
Что я уже пробовал:
RegisterActivity.java
package com.hemas.virtualfoods; import android.content.Intent; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; import com.android.volley.RequestQueue; import com.android.volley.Response; import com.android.volley.toolbox.Volley; import org.json.JSONException; import org.json.JSONObject; public class RegisterActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_register); final EditText regName = (EditText)findViewById(R.id.regName); final EditText regPassword = (EditText)findViewById(R.id.regPassword); //final EditText regConfirmPass = (EditText) findViewById(R.id.regConfirmPass); final EditText regPhone = (EditText)findViewById(R.id.regPhone); final EditText regEmail = (EditText)findViewById(R.id.regEmail); final Button regButton = (Button)findViewById(R.id.regButton); regButton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { final String username = regName.getText().toString(); final String password = regPassword.getText().toString(); final String phoneno = regPhone.getText().toString(); final String email = regEmail.getText().toString(); Response.Listener<String> responseListener = new Response.Listener<String>() { @Override public void onResponse(String response) { try { // JSONObject jsonResponse = (JSONObject) new JSONTokener(response).nextValue(); JSONObject jsonResponse = new JSONObject(response); boolean success = (1 == jsonResponse.getInt("success")); if (success) { Intent intent = getIntent(); intent.setClass(getBaseContext(), LoginActivity.class); startActivity(intent); //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(username, password, phoneno, email, responseListener); RequestQueue queue = Volley.newRequestQueue(RegisterActivity.this); queue.add(registerRequest); } }); } }
RegisterRequest.java
package com.hemas.virtualfoods; import com.android.volley.Response; import com.android.volley.toolbox.StringRequest; import java.util.HashMap; import java.util.Map; public class RegisterRequest extends StringRequest { private static final String REGISTER_REQUEST_URL = "https://wary-stars.000webhostapp.com/Register.php"; private Map<String, String> params; public RegisterRequest(String username, String password, String phoneno, String email, Response.Listener<String> listener){ super(Method.POST, REGISTER_REQUEST_URL, listener, null); params = new HashMap<>(); params.put("username", username); params.put("password", password); params.put("phoneno", phoneno); params.put("email", email); } public Map<String, String> getParams() { return params; } }