Ich habe einen Methodennamen Request() in der onCreate-Methode der Aktivität.Zugriff auf Http-Antwortstring in der Aktivität
private void Request() {
new PostDataAsyncTask(textEmail, tValue).execute();
}
Iam vorbei zwei Saiten in ihm und der Asynchron-Klasse ist wie folgt:
public class PostDataAsyncTask extends AsyncTask<String, String, String> {
GameActivity game= new GameActivity();
private String data,data1;
public PostDataAsyncTask(String textEmail, String hello) {
data = textEmail;
data1= hello;
}
long date = System.currentTimeMillis();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MMM MM dd, yyyy h:mm a");
String dateString = simpleDateFormat.format(Long.valueOf(date));
protected void onPreExecute() {
super.onPreExecute();
}
@Override
protected String doInBackground(String... strings) {
try {
postText();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(String lenghtOfFile) {
}
private void postText(){
try{
String postReceiverUrl = "http://techcube.pk/game/game.php";
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(postReceiverUrl);
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("email", data));
nameValuePairs.add(new BasicNameValuePair("score", data1));
nameValuePairs.add(new BasicNameValuePair("datetime", dateString));
httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpClient.execute(httpPost);
HttpEntity resEntity = response.getEntity();
if (resEntity != null) {
String responseStr = EntityUtils.toString(resEntity).trim();
Log.v("SuccesS", "Response: " + responseStr);
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Nun, was ich will, ist, dass ich den Wert von responseStr in meinem MainActivity erhalten möchten, dass, wenn posttext erzeugt wird Methode genannt. Wie wird dieser ResponseStr-Wert in der MainActivity angezeigt? Erinnern Sie sich, es gibt eine neue Klasse, die ich als PostDataAsyncTask benannt, so wie Sie auf ResponseStr von dieser Klasse zugreifen und es in meiner MainActivity als Toast oder Textview anzeigen? Bitte Hilfe
Ich versuchte dieses Sir, aber es gibt mir eine Ausnahme, NullPointerException –
zu sagen, ein anderes Aussehen. Ich habe meine Antwort umgeschrieben, um genauer zu sein, was du versuchst. – Redshirt
hat endlich funktioniert Vielen Dank, du bist Champion :) –