我使用asynctask从数据库中获取用户信息,因为您无法在其前端任务中执行此操作...当任务完成时,我希望返回到我打电话给这个Asynctask有没有办法做到这一点?如何在Asynctask中回拨我的父级活动
我的目标是启动另一个活动时的AsyncTask完成
package com.example.eightmiles;
import android.app.AlertDialog;
import android.content.Context;
import android.os.AsyncTask;
import android.print.PrintAttributes;
import android.widget.Toast;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;
import java.util.StringTokenizer;
public class Backgroundtask extends AsyncTask<String, Void, String> {
AlertDialog alertDialog;
AlertDialog alertDialog2;
Context ctx;
Signin signin;
Userlocalstore userlocalstore;
String res_name , res_username , res_dob , res_email , res_id , res_pass;
Backgroundtask(Context ctx)
{
this.ctx =ctx;
}
@Override
protected void onPreExecute() {
alertDialog = new AlertDialog.Builder(ctx).create();
alertDialog.setTitle("Login Information....");
alertDialog2 = new AlertDialog.Builder(ctx).create();
alertDialog2.setTitle("Apologies");
}
@Override
protected String doInBackground(String... params) {
String reg_url = "http://8miles.freeiz.com/Register.php";
String login_url = "http://8miles.freeiz.com/getuserinfo.php";
String method = params[0];
if (method.equals("Register")) {
String name = params[1];
String user_name = params[2];
String user_pass = params[3];
String email = params[4];
String dob = params[5];
它不是那么简单..即使我已经通过我的活动对象为asyctask custructor并保存它....这是不可能的......这说“构造函数意图(Backgroundtask,类)未定义” –
将与第一个参数相同的活动引用传递给Intent构造函数。我会更新片段。 – Boots
尝试:'Intent intent = new Intent(MyActivity.this,WhateverActivity.class);' – BladeCoder