使用AppWidgetManager的updateAppWidgetOptions方法存储每个窗口小部件的自定义选项

Gia*_*nzi 6 android android-widget sharedpreferences

我有三个关于App Widget Options的问题:

1)如果我想为app小部件的选项添加一个选项值,我应该首先检索小部件选项,getAppWidgetOptions(int)然后操纵它Bundle,否则当我打电话时updateAppWidgetOptions(int appWidgetId, Bundle options)我会覆盖其他现有选项,对吧?

2)这个选项在重启后能够存活吗?即,如果我在配置活动中存储与小部件相关的一些信息,我确定即使重启后我也能找到它们吗?系统是否自动将它们保留在某个地方?

3)这比在共享首选项中存储窗口小部件选项更快吗?

j__*_*__m 5

updateAppWidgetOptions用于发射器调用以将信息传递给小部件.小部件接收此信息onAppWidgetOptionsChanged.窗口小部件不以这种方式存储信息,如果他们尝试,它们将被启动器覆盖.


Jür*_*ann 2

  1. 是的,我想是的。如果你想确定的话,我想你应该测试一下。

  2. 我不这么认为。您需要像 SQLite DB 或共享首选项这样的持久存储才能在重新启动后继续存在

  3. 也许吧,因为它是基于内存的(SharedPrefs 是基于文件的)。