-1
     // check for login response
            try {
                if (json.getString(KEY_SUCCESS) != null) {
                    Log.d("DEBUG", "jSON");
                      loginErrorMsg.setText("");

                    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(getApplicationContext());
                        JSONObject json_user = json.getJSONObject("user");

                        // Clear all previous data in database
                        UserFunctions.logoutUser(getApplicationContext());
                        db.addSubscriber( json.getString(KEY_RegIDSubscribers), json_user.getString(KEY_EMAIL),json_user.getString(KEY_NAME), json_user.getString(KEY_Password), json_user.getString(KEY_Phone),json_user.getString(KEY_University),json_user.getString(KEY_Major), json.getString(KEY_GcmLocations));                        

                        // Launch Dashboard Screen
                        Intent dashboard = new Intent(getApplicationContext(), MainActivity.class);

                        // Close all views before launching Dashboard
                        dashboard.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                        startActivity(dashboard);

                        // Close Login Screen
                        finish();
                    }else{
                        // Error in login
                        loginErrorMsg.setText("Incorrect username/password");
                    }
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }
        }

「try」の行を開始するときにエラーが発生し、エラーは java.lang.NullPointerException です。また、java.lang.String を JSONObject に変換できないというエラーが発生しています。助けてください?

4

1 に答える 1

0

スタックトレースなしで言うのは難しいですが、それloginErrorMsgnull. findViewByIdビューを取得する場所に関係なく、ビューを初期化したり、間違った viewId をメソッドに渡したりすることはできません。

于 2013-10-14T15:41:21.620 に答える