gpt4 book ai didi

java - 有关小部件上下文/生命周期的信息

转载 作者:行者123 更新时间:2023-12-01 15:58:23 24 4
gpt4 key购买 nike

我有一个打包在应用程序中的小部件,并且我对该小部件/应用程序的上下文/生命周期有一些疑问:

  • 应用程序和小部件共享相同的进程,并且连续地单例?
  • 如果我有服务,它们必须是远程服务吗?
  • 更新小部件的流程的生命周期是怎样的?仅适用于小部件?

一般来说,任何有关小部件生命周期/上下文的信息都将非常感激

最佳答案

The application and widget share the same process

如果你查看你的代码,你会发现一个扩展 AppWidgetProvider 的类, 在所有的可能性。这是更新应用小部件占用的主屏幕 UI 部分的代码。

如果您查看 list ,您会发现您添加了 AppWidgetProvider作为<receiver> 。这表明AppWidgetProviderBroadcastReceiver 。 list 注册 BroadcastReceivers生存时间很短——足够长的时间来处理onReceive() ,仅此而已。

因此,“应用程序和小部件共享同一进程”是可能的,就好像您已经有一个进程一样(例如,用户现在位于您的 Activity 之一中),并且 onUpdate()您的AppWidgetProvider被触发,则AppWidgetProvider将处于同一过程中。但是,如果您的应用程序未运行,则 onUpdate()为您AppWidgetProvider将在某个进程中运行,该进程之前可能托管或未托管过您的任何代码。

and consecuently singletons?

您不应该依赖于此。

If I've services they have to be remote ones?

对于“远程”的任何定义来说,绝对不是。

What's the lifecycle of the process that updates the widget? Is only for the widget?

见上文。

关于java - 有关小部件上下文/生命周期的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4555547/

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