Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.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
Android绑定服务与异步任务_Android_Android Asynctask_Android Service_Aidl - Fatal编程技术网

Android绑定服务与异步任务

Android绑定服务与异步任务,android,android-asynctask,android-service,aidl,Android,Android Asynctask,Android Service,Aidl,我的活动中有很多异步任务,我需要为每次调用重写AsyncTask以异步执行 我可以用BoundService+AIDL替换所有的AsyncTasks吗?或者我只需要用AsyncTask替换吗?服务在后台运行,但仍然在主线程(又名.UI线程)中运行,您将得到一个异常。根据API: 关于服务类的大多数困惑实际上围绕着它不是什么: 服务不是一个单独的进程。服务对象本身并不意味着它正在自己的进程中运行;除非另有规定,否则它与它所属的应用程序在同一进程中运行 服务不是线程。它本身并不是一种脱离主线程工作

我的活动中有很多异步任务,我需要为每次调用重写AsyncTask以异步执行


我可以用BoundService+AIDL替换所有的AsyncTasks吗?或者我只需要用AsyncTask替换吗?

服务在后台运行,但仍然在主线程(又名.UI线程)中运行,您将得到一个异常。根据API:

关于服务类的大多数困惑实际上围绕着它不是什么:

  • 服务不是一个单独的进程。服务对象本身并不意味着它正在自己的进程中运行;除非另有规定,否则它与它所属的应用程序在同一进程中运行
  • 服务不是线程。它本身并不是一种脱离主线程工作的方法(以避免应用程序不响应错误)

您可以使用服务,但如果希望在单独的线程中运行某些内容,则仍然需要在服务或活动中实现线程逻辑。

服务在后台运行,但仍在主线程(又名.UI线程)中运行,您将得到一个R异常。根据API:

关于服务类的大多数困惑实际上围绕着它不是什么:

  • 服务不是一个单独的进程。服务对象本身并不意味着它正在自己的进程中运行;除非另有规定,否则它与它所属的应用程序在同一进程中运行
  • 服务不是线程。它本身并不是一种脱离主线程工作的方法(以避免应用程序不响应错误)

您可以使用服务,但如果希望在单独的线程中运行某些内容,则仍然需要在服务或活动中实现线程逻辑。

服务是守护进程,AsynkTask是后台线程。

服务是守护进程,AsynkTask是后台线程