Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 另一个AsyncTask中的Android AsyncTask_Java_Android_Multithreading_Android Asynctask - Fatal编程技术网

Java 另一个AsyncTask中的Android AsyncTask

Java 另一个AsyncTask中的Android AsyncTask,java,android,multithreading,android-asynctask,Java,Android,Multithreading,Android Asynctask,我想使用以下代码在另一个AsyncTask中运行AsyncTask: protected Integer doInBackground(Void... params) { InetAddress inetAddress; try { while (true) { inetAddress = InetAddress.getByName("192.168.1.1"); mSocket = new Socket(in

我想使用以下代码在另一个AsyncTask中运行AsyncTask:

   protected Integer doInBackground(Void... params) {
    InetAddress inetAddress;
    try {
        while (true) {
            inetAddress = InetAddress.getByName("192.168.1.1");
            mSocket = new Socket(inetAddress, 4444);

            SocketData data = new SocketData();


            GetPacket pack = new GetPacket();
            AsyncTask<SocketData, Integer, Integer> running = pack.execute(data);
受保护整数doInBackground(Void…params){
InetAddress InetAddress;
试一试{
while(true){
inetAddress=inetAddress.getByName(“192.168.1.1”);
mSocket=新套接字(inetAddress,4444);
SocketData=新的SocketData();
GetPacket pack=新的GetPacket();
AsyncTask running=pack.execute(数据);
但是有一个错误:
必须从主线程调用方法。当前推断的线程是工作线程

onProgressUpdate
中执行此方法在主线程上运行

protected Integer doInBackground(Void... params) {
    publishProgress(data);
}

protected void onProgressUpdate(SocketData... data) {
    GetPacket pack = new GetPacket();
    AsyncTask<SocketData, Integer, Integer> running = pack.execute(data[0]);
}
受保护整数doInBackground(Void…params){
出版进度(数据);
}
受保护的void onProgressUpdate(SocketData…数据){
GetPacket pack=新的GetPacket();
AsyncTask running=pack.execute(数据[0]);
}

你到底想做什么?为什么不能在一个
异步任务中完成所有需要的事情?