gpt4 book ai didi

android - 为什么要使用安卓服务?

转载 作者:IT老高 更新时间:2023-10-28 22:22:29 27 4
gpt4 key购买 nike

我想知道当您需要做很多事情来访问任何公共(public)方法或从服务(例如更大的 List 对象)获取大量数据时,使用 android 服务进行后台工作有什么意义。

如果您愿意,为什么不使用一个简单的 POJO 在单独的线程中为您在后台执行操作,并且无需使用 AIDL 创建接口(interface)、绑定(bind)到服务等即可访问其公共(public)方法?

似乎需要做很多工作才能从服务类访问方法,或者这真的不是 android 中服务类的重点吗?

我开发了一个 android 服务类,它从 Web 服务获取 100 个 xml 结构中的项目,然后我将其解析为 POJO,然后存储在列表中,但我很难找到发送此列表的方法返回调用此服务的 Activity 。

我已经阅读了有关使用 parcebales 对象的信息,但是连同所有 intent.putExtra 都有大小限制,因此我将来可能会遇到问题。

我正在考虑放弃 Android 服务,但我很快就发现为什么我一开始就不喜欢使用它们 :(

一个简单的SomeBackgroundPojo backroundTask = new SomeBackgroundPojo(); backgroundTask.getData();

似乎比处理parcelables、serealizable objects、AIDL、绑定(bind)etcc等都简单得多,只是为了实现我刚刚在上面输入的两行代码:(

最佳答案

Nitpick:一个运行线程后台任务的对象精确地不是 plain old Java object 的通常含义.

如果您不关心请求的 Activity 或应用程序关闭时正在完成的工作会发生什么,那么请务必避免使用服务。服务的要点之一是当用户离开 Activity 时它们可以保持 Activity 状态:如果您只是在工作以填充 UI ListView,请务必使用例如一个 AsyncTask ,如 this earlier question 中所述.

关于android - 为什么要使用安卓服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4015866/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com