08-07 06:04:44.801: E/AndroidRuntime(20161): FATAL EXCEPTION: AsyncTask #1
08-07 06:04:44.801: E/AndroidRuntime(20161): Process: com.parents.track, PID: 20161
08-07 06:04:44.801: E/AndroidRuntime(20161): java.lang.RuntimeException: An error occurred while executing doInBackground()
08-07 06:04:44.801: E/AndroidRuntime(20161): at android.os.AsyncTask$3.done(AsyncTask.java:309)
08-07 06:04:44.801: E/AndroidRuntime(20161): at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
08-07 06:04:44.801: E/AndroidRuntime(20161): at java.util.concurrent.FutureTask.setException(FutureTask.java:223)
08-07 06:04:44.801: E/AndroidRuntime(20161): at java.util.concurrent.FutureTask.run(FutureTask.java:242)
08-07 06:04:44.801: E/AndroidRuntime(20161): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)
08-07 06:04:44.801: E/AndroidRuntime(20161): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
08-07 06:04:44.801: E/AndroidRuntime(20161): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
08-07 06:04:44.801: E/AndroidRuntime(20161): at java.lang.Thread.run(Thread.java:818)
08-07 06:04:44.801: E/AndroidRuntime(20161): Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'int org.json.JSONObject.getInt(java.lang.String)' on a null object reference
08-07 06:04:44.801: E/AndroidRuntime(20161): at com.parents.track.LoginActivity$LogIn.doInBackground(LoginActivity.java:89)
08-07 06:04:44.801: E/AndroidRuntime(20161): at com.parents.track.LoginActivity$LogIn.doInBackground(LoginActivity.java:1)
08-07 06:04:44.801: E/AndroidRuntime(20161): at android.os.AsyncTask$2.call(AsyncTask.java:295)
08-07 06:04:44.801: E/AndroidRuntime(20161): at java.util.concurrent.FutureTask.run(FutureTask.java:237)
08-07 06:04:44.801: E/AndroidRuntime(20161): ... 4 more
class LogIn extends AsyncTask<String,Void,String >{
private JsonParser jsonParser;
@Override
protected String doInBackground(String... arg0) {
jsonParser = new JsonParser();
String url = "http://localhost/track/login.php?phone=";
StringBuilder urlStringBuilder = new StringBuilder(url);
urlStringBuilder.append(arg0[0]);
SessionManager sessionManager=new SessionManager(context);
JSONObject json = jsonParser.getJsonObject(urlStringBuilder, "GET");
int isLongedIn=0;
try {
isLongedIn=json.getInt("LogedIn");
if(isLongedIn==1){
String sesion=json.getString("Message");
sessionManager.createLoginSession(sesion);
Intent intent=new Intent(context,WelcomeActivity.class);
Bundle extra = new Bundle();
extra.putString("HP",phone.getText().toString());
intent.putExtras(extra);
startActivity(intent);
}else{
Intent intent=new Intent(context,LoginActivity.class);
startActivity(intent);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
Log.w("Json Error", e.toString());
e.printStackTrace();
}
return null;
}
}
Check your server response,it can't find "LogedIn" in this line: isLongedIn=json.getInt("LogedIn"); Add a default isLongedIn=json.getInt("LogedIn",0); and Check response for have a record by name "LogedIn"
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.