Android - JSONException Kein Wert für
Ich weiß, dass hier mehrere Fragen mit demselben Thema und demselben Fehler gestellt wurden, aber keine weist auf dasselbe Problem wie meine hin. Deshalb habe ich beschlossen, meine Frage hier zu stellen, in der Hoffnung, dass mir jemand dabei helfen würde, die Ursache herauszustellen. Ich versuche also, die Anmeldefunktion in meiner App zu implementieren, und hier ist der Code:
if (tag.equalsIgnoreCase(login_tag)){
// check for login response
try {
if (json.getString(KEY_SUCCESS) != null) {
String res = json.getString(KEY_SUCCESS);
if(Integer.parseInt(res) == 1){
// user successfully logged in
// Store user details in SQLite Database
DatabaseHandler db = new DatabaseHandler(mContext);
JSONObject json_user = json.getJSONObject("user");
// Clear all previous data in database
logoutUser(mContext);
Toast.makeText(mContext, json.toString(3), Toast.LENGTH_LONG).show();
db.addUser(json_user.getString(KEY_EMAIL), json_user.getString(KEY_NAME), json.getString(KEY_UID), json.getString(KEY_AVA), json_user.getString(KEY_BDAY), json_user.getString(KEY_COUNTRY), json_user.getString(KEY_PREF), json_user.getString(KEY_SPEND));
// Launch Dashboard Screen
Intent dashboard = new Intent(mContext, DashboardActivity.class);
// Close all views before launching Dashboard
dashboard.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
mContext.startActivity(dashboard);
// Close Login Screen
((Activity) mContext).finish();
}
}
} catch (JSONException e) {
e.printStackTrace();
}
}
Und dies ist die JSON-Antwort, die ich beim Anmelden erhalten habe:
{
"tag": "login",
"success": 1,
"error": 0,
"uid": "5123",
"user": {
"email": "[email protected]",
"name": "abc",
"avatar": "avatars/img_hzsxda_2013-03-18-11-03-33.jpg",
"bday": "1991-02-01",
"country": "Australia",
"preferences": "none",
"spending": "none"
}
}
Es gibt also anscheinend einen Wert füravatar
, aber ich habe immer noch diese Warnung in meinem Logcat:
03-18 12:06:36.972: W/System.err(24574): org.json.JSONException: No value for avatar
Da kein Wert Avatar hat, kann ich nicht vervollständigenaddUser
, daher schlägt die Anmeldung fehl. Bitte helfen Sie mir, den Fehler zu finden und zu beheben. Vielen Dank.