【问题标题】:How to restore widget data to its previous state when reboot the phone?重启手机时如何将小部件数据恢复到以前的状态?
【发布时间】:2019-04-01 06:09:32
【问题描述】:

我正在使用 android:configure 标签设置小部件数据,该标签设置我的 配置活动(即它的列表对话框),它将onClick 事件和图像设置为我的小部件,具体取决于关于用户的选择。现在的问题是,每当我重新启动手机或重新运行我的小部件时,它都会清除其图像并单击监听器。

即使我将侦听器设置为 BOOT_COMPLETED 意图,我将如何将小部件的值重置为以前的值,因为我不想每次重启时都调用我的配置活动。

提前致谢!

@Override
public void onReceive(Context context, Intent intent) {
    super.onReceive(context, intent);
    if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED")) {
        AppUtils.showToast(context, " BOOT_COMPLETED ", true);
    }
}

【问题讨论】:

    标签: java android widget android-appwidget appwidgetprovider


    【解决方案1】:

    您应该将有价值的数据保存到SQLiteRoomRealm 或您喜欢的任何数据库工具,一旦您在BOOT_COMPLETED 收到事件后使用您保存的数据的值恢复小部件

    【讨论】:

    • 是的。我也可以将数据保存在 SQLite 或 SharedPrefs 中……但这是我的最后一个选择……我正在寻找更有效的方法,例如使用 appWidgetManager 重置小部件,但我找不到方法……感谢您的回复.
    • 我认为没有别的办法了。
    【解决方案2】:

    小部件不提供在重启后保存其状态的能力。

    除了您自己将其保存在任何持久存储库中之外,别无他法。

    【讨论】:

    • 这可以是评论而不是答案。请检查这个社区的规则。
    猜你喜欢
    • 1970-01-01
    • 2021-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-21
    • 1970-01-01
    • 2019-12-20
    • 1970-01-01
    相关资源
    最近更新 更多