Android:需要一个使用的想法:Service、Thread、AsyncTask 或其他东西

Posted

技术标签:

【中文标题】Android:需要一个使用的想法:Service、Thread、AsyncTask 或其他东西【英文标题】:Android: Need an idea which to use: Service, Thread, AsyncTask or something ese 【发布时间】:2016-09-22 07:14:10 【问题描述】:

我正在为我目前的问题使用哪些技术而苦苦挣扎。

我有一个应用程序需要将 pdf 的每一页加载到图像并显示到屏幕上。将页面加载到图像文件的时间可能会很长。这些从 pdf 生成的图像将显示在 imageView 上。

我想知道 Service 是否会被过度杀死,或者我只是让你使用 AsyncTask 来代替。

【问题讨论】:

【参考方案1】:

你应该使用服务

正如文档所说:

服务是一个可以长时间运行的应用程序组件 后台操作,不提供用户界面。 另一个应用程序组件可以启动一个服务,它会继续 即使用户切换到另一个在后台运行 应用。

【讨论】:

【参考方案2】:

AsyncTask 应该只用于需要几秒钟的操作。

AsyncTask 在单个后台线程上串行执行(来自 API 11)。所以长时间运行的工人可以阻止其他人。

考虑使用服务,您仍然需要线程(默认情况下,服务在 UI 线程中运行)。

【讨论】:

以上是关于Android:需要一个使用的想法:Service、Thread、AsyncTask 或其他东西的主要内容,如果未能解决你的问题,请参考以下文章

Android调用web Service

Android service 中的stub类是啥意思?

Android----service

android中Service使用详解

Android怎么让一个service开机自动启动

在 Android 中不需要 android.permission.BIND_JOB_SERVICE 权限