У меня есть скрипт php, который возвращает json в android. Успех msg не проблема. Но как я буду работать над формой validation error msg как «Username уже существует», «Invalid student Id» и т. Д., Что внутри json_encode через android. Я попытался изменить тип данных в JSONObject, но он дал мне много красной строки.AsyncTask doInBackground и postExecute
Любые идеи или предложения Благодарю вас, ребята.
public class httpRegister extends AsyncTask <String, Integer, String> {
int success;
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
}
@Override
protected String doInBackground(String... arg0) {
// TODO Auto-generated method stub
try {
String studId = studentId.getText().toString();
String uName = username.getText().toString();
String pWord = password.getText().toString();
String cPWord = cfmPassword.getText().toString();
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("studNum", studId));
params.add(new BasicNameValuePair("username", uName));
params.add(new BasicNameValuePair("password", pWord));
params.add(new BasicNameValuePair("cfmPassword", cPWord)
JSONParser parser = new JSONParser(); my Class in other activity
JSONObject json = parser.requestHttp(REG_URL, "POST", params);
success = json.getInt(TAG_SUC);//get success msg
if(success == 1){ //No problem here
return json.getString(TAG_MSG);
}else{
//If there's invalid input php script return here
return json; //Problem returning json to PostExecute
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(String result) {
// TODO Auto-generated method stub
//User JSONObject here to activity
}
}
Ваш doInBackground вернет Sting, поскольку ваш тип результата в Async - это String, поэтому он даст вам ошибку при попытке вернуть JSONObject. – Shvet
Что мне нужно делать? protected String doInBackground (String ... arg0) мне нужно изменить это? –
@MajikeroGallardo: Вы действительно запустили этот код? Есть части, которые могут вызвать серьезные ошибки. – Squonk