android – 线程或服务

前端之家收集整理的这篇文章主要介绍了android – 线程或服务前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我对 android上的线程和服务感到困惑.
如果我必须从服务器下载一些文件.它可能一次只有多个文件.
在这种情况下,线程或服务应该选择什么?

解决方法

Service中执行操作不会使其在后台运行.您还必须在服务中创建一个Thread,以等待下载完成.

如果您使用的是活动本地的线程,您将无法离开活动,将其发送到后台或因来电等中断.这可能会导致您的应用被操作系统杀死以释放记忆.在这种情况下,您的线程将丢失,并且可能无法重新启动并使您的应用程序崩溃.

如果你创建一个服务,那么你就不太可能被杀死,只有一个线程,你可以指定操作系统在操作系统被杀死后重启服务.这使得该服务成为非常长时间下载的更安全选择.我在我的一个应用程序中使用服务来下载一个20 MB的文件,并在此服务中创建一个执行下载的线程.

服务只能帮助您封装下载并将其与活动分离,并在操作系统中为您提供另一种状态,以防止线程因内存不足而消失.

猜你在找的Android相关文章