私はtutorialに従っています(正直なところ、貼り付けをコピーしていたので、なぜ動作しません私は事を変更しませんでした)、私はJsonオブジェクトに変換する必要があるこのStringレスポンスを持っています。JSONObjectを作成しようとすると、org.json.JSONObject.toString()を評価できません。
応答=
のconfig.php \ R \ nは{ "エラー":偽、 "ユーザ":{ "名前": "テスト"、 "姓": "テスト"、 "住所" : "テスト"、 "電子メール": "テスト"}}
右JSONObject jObj = new JSONObject(response);
でtry
私のプログラムは、メッセージを例外にジャンプした後:
方法は、「java.lang.NullPointerExceptionが投げました'例外。 はorg.json.JSONObject.toStringを評価することはできません()
はそれがresponse
か何かの構造ですか?私はそれを使用するのはここ
です:
@Override
public void onResponse(String response) {
Log.d(TAG, "Login Response: " + response.toString());
hideDialog();
try {
JSONObject jObj = new JSONObject(response);
boolean error = jObj.getBoolean("error");
// Check for error node in json
if (!error) {
// user successfully logged in
// Create login session
session.setLogin(true);
// Now store the user in SQLite
JSONObject user = jObj.getJSONObject("user");
String name = user.getString("name");
String surname = user.getString("surname");
String address = user.getString("address");
String email = user.getString("email");
// Inserting row in users table
db.addUser(name, surname, address, email);
// Launch main activity
Intent intent = new Intent(LoginScreen.this,
MainMenu.class);
startActivity(intent);
finish();
} else {
// Error in login. Get the error message
String errorMsg = jObj.getString("error_msg");
Toast.makeText(getApplicationContext(),
errorMsg, Toast.LENGTH_LONG).show();
}
} catch (JSONException e) {
// JSON error
e.printStackTrace();
Toast.makeText(getApplicationContext(), "Json error: " + e.getMessage(), Toast.LENGTH_LONG).show();
}
}
であなたのJSONを確認することができます。 –
ありがとうございました。彼らがチュートリアルでこれを言及していない理由は不思議です。コードは同じです – giedriusx3