首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AppWidgetProvider的模型

AppWidgetProvider的模型
EN

Stack Overflow用户
提问于 2010-08-02 21:58:42
回答 1查看 1.2K关注 0票数 2

我有一个小部件,它显示了从Internet获取的一些数据。我可以在屏幕上看到多个小部件,每个部件都显示一些数据,部分与其他小部件相同。

我不时地从Internet上重新获取数据并更新小部件视图。

我已经用MVC风格对此进行了建模:我有一个模型,我可以在该模型上调用“re data”,并让视图监听该模型。

我的问题:

A)让我的模型成为一个单身的人是明智的吗?

B) --我能依赖于所有的小部件都由同一个AppWidgetProvider提供吗?或者我的一些小部件可能由不同的AppWidgetProvider实例提供?或者,更普遍地说:是否可以保证我的AppWidgetProvider只有一个实例?

如果我的AppWidgetProvider只有一个实例,那么我可以在这里为模型使用一个实例变量,并在需要的地方传递AppWidgetProvider或模型。也许是更好的选择?

C)中的AppWidgetProviders onUpdate方法,我能确保每个调用都传递相同的“上下文”对象作为参数吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-08-02 23:01:12

让我的模特成为单身人士是明智的吗?

考虑到您不能在AppWidgetProvider中拥有静态数据,我认为单例是非常不安全的。您需要使用持久存储,例如文件或数据库。

我能相信所有的小部件都由同一个AppWidgetProvider提供吗?

会是同一个班。它绝对是将不再是同一个实例,除非你正在做一些真正邪恶的事情,比如试图拥有一个永恒的服务。

或者我的一些小部件可能由不同的AppWidgetProvider实例提供?

是。

或者,更普遍地说:是否可以保证我的AppWidgetProvider只有一个实例?

有一个保证,,而不是,只会是AppWidgetProvider的一个实例。“如果这个BroadcastReceiver是通过标记启动的,那么在从这个函数返回之后,这个对象就不再是活动的了。”

在AppWidgetProviders onUpdate方法中,是否可以确保每个调用都传递相同的“上下文”对象作为参数?

我不认为这是一个安全的假设。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3392132

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档