El inicio de sesión de Android con el objeto json está vacío en la búsqueda incluso si la ejecución de archivos php en el navegador Chrome está bien

Sigue mi clase de búsqueda

public class fetchUserDataAsyncTask extends AsyncTask<Void, Void, User> { User user; GetUserCallback userCallBack; public fetchUserDataAsyncTask(User user, GetUserCallback userCallBack) { this.user = user; this.userCallBack = userCallBack; } @Override protected User doInBackground(Void... params) { ArrayList<NameValuePair> dataToSend = new ArrayList<>(); dataToSend.add(new BasicNameValuePair("username", user.username)); dataToSend.add(new BasicNameValuePair("password", user.password)); HttpParams httpRequestParams = new BasicHttpParams(); HttpConnectionParams.setConnectionTimeout(httpRequestParams, CONNECTION_TIMEOUT); HttpConnectionParams.setSoTimeout(httpRequestParams, CONNECTION_TIMEOUT); HttpClient client = new DefaultHttpClient(httpRequestParams); HttpPost post = new HttpPost(SERVER_ADDRESS + "FetchUserData.php"); User returnedUser = null; try { post.setEntity(new UrlEncodedFormEntity(dataToSend)); HttpResponse httpResponse = client.execute(post); HttpEntity entity = httpResponse.getEntity(); String result = EntityUtils.toString(entity); JSONObject jObject = new JSONObject(result); if (jObject.length() != 0){ Log.v("happened", "2"); String name = jObject.getString("name"); int age = jObject.getInt("age"); returnedUser = new User(name, age, user.username, user.password); } } catch (Exception e) { e.printStackTrace(); } return returnedUser; } @Override protected void onPostExecute(User returnedUser) { super.onPostExecute(returnedUser); progressDialog.dismiss(); userCallBack.done(returnedUser); } } 

Php buscar el archivo Fetch_User_Data.php

 <?php $con=mysqli_connect("localhost","root","","loginregister"); if (mysqli_connect_errno($con)) { echo "Failed to connect to MySQL: " , mysqli_connect_error(); } if (isset($_POST["password"])) {$password = $_POST ["password"];}else $password = 'bimbomix'; if (isset($_POST["username"])) {$username = $_POST ["username"];}else $username = 'bimbomix'; $statement = mysqli_prepare($con, "SELECT * FROM user WHERE username = ? AND password = ?"); mysqli_stmt_bind_param($statement, "ss", $username, $password); mysqli_stmt_execute($statement); mysqli_stmt_store_result($statement); mysqli_stmt_bind_result($statement, $user_id, $name, $age, $username, $password); $user = array(); while(mysqli_stmt_fetch($statement)){ $user['name'] = $name; $user['age'] = $age; $user['username'] = $username; $user['password']= $password; } echo json_encode($user); mysqli_close($con); ?> 

Prueba Hardcoding

  User returnedUser=null; try { post.setEntity(new UrlEncodedFormEntity(dataToSend)); HttpResponse httpResponse = client.execute(post); HttpEntity entity = httpResponse.getEntity(); String result = EntityUtils.toString(entity); //until here hardcoding fills correctly returnedUser JSONObject jObject = new JSONObject(result); returnedUser = new User("hello", 42, user.username, user.password); // this is hardcoded string that let returnedUser ==null // so perhaps problem is in jObject if (jObject.length() != 0){ Log.v("happened", "2"); String name = jObject.getString("name"); int age = jObject.getInt("age"); // returnedUser = new User(name, age, user.username, user.password); } } catch (Exception e) { e.printStackTrace(); } return returnedUser; } 

Lo siento mucho. ¡El problema era simple, incluso si me ha vuelto loco por un par de semanas! Mira el archivo de búsqueda "Fetch_User_Data.php" y luego mirar la cadena donde la llamo como "FetchUserData.php" y se terminará …

  • Compruebe que el usuario abra el sitio en la aplicación o no
  • Cómo implementar una sencilla API de OAuth y servidor de Android
  • Recuperar la imagen de mysql-php (android)
  • ¿Hay alguna manera de escribir aplicaciones de Android en PHP?
  • ¿Cuál es la mejor manera de enviar una imagen desde un dispositivo Android a un servidor para su procesamiento y enviar los resultados?
  • Asegurar php api para usar en la aplicación android
  • Cómo difundir la referencia a la aplicación de Android
  • Codificación / decodificación de datos entre php / java para android
  • ¿Cómo funciona la sincronización de datos y cómo la uso en aplicaciones cliente-servidor?
  • Envío de datos POST en Android
  • Conectando MySql con Android sin usar PHP
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.