gpt4 book ai didi

android - Android 中的 Headless Fragment 和 Service 有什么区别?

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

服务

服务是一个应用程序组件,代表应用程序希望在不与用户交互的情况下执行更长时间运行的操作,或提供功能供其他应用程序使用。

headless fragment

可以在不定义用户界面的情况下使用 fragment 。建议使用 headless fragment 进行后台处理。

这里有什么区别?

最佳答案

Service 在进程级别被赋予比 Activity 更高的优先级。当内存不足时,Android 系统会将 Services 优先于 Activitys,使 Services 成为长时间运行任务的理想选择。请参阅标题为 Processes and Threads 的文章了解更多信息。

此外,当您在原始帖子中陈述以下内容时:

Fragments can be used without defining a user interface. It is recommended to use headless fragments for your background processing.

你从哪里引用这个?我同意第一句话,但第二句话太笼统了。对于短期任务(例如执行 HTTP 请求等), headless fragment 可以正常工作。但是,对于执行长时间运行的后台处理(例如下载非常大的文件等), headless fragment 可能不是您想要的。例如,如果您使用 headless fragment 执行长时间运行的任务并且用户单击“后退按钮”,这将导致 Activity 及其 headless Fragment被销毁。

总而言之,服务是一个独立于Activity而存在的后台组件,这意味着即使启动了Activity,它也可以继续在后台运行。服务被破坏。另一方面, headless fragment 将始终具有关联的父 Activity。如果承载 fragment 的 Activity 被系统销毁,那么 fragment 也必须被杀死。

关于android - Android 中的 Headless Fragment 和 Service 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22799759/

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