【问题标题】:is AppWidgetProvider informed if adding a widget fails due to not enough space on homescreen如果由于主屏幕上没有足够的空间而导致添加小部件失败,AppWidgetProvider 会被通知
【发布时间】:2009-12-30 07:27:02
【问题描述】:

我的应用有一个 1*4 图标大小的小部件。 当用户尝试添加一个小部件时,我提供了一个配置屏幕。并收集了一些数据 - 由服务器验证 - 它以 appWidgetID 作为键添加到本地数据库 - 一切都很好。

当用户点击保存时,如果没有足够的空间,他会得到礼貌的祝酒词——“这个主屏幕上没有更多空间了”。

现在我的问题是应用程序没有收到通知。应用程序仍然假定小部件已创建并坐下来等待广播在一定时间后更新小部件。

谁能告诉我是否可以通过广播或回调或任何可能的方法来确定小部件是否未成功创建,以便我可以在我的数据库中将该记录标记为已删除。

如果我能通过一些魔法忍者代码事先知道可用空间,那就更好了。

我的整个应用程序设计都因为这个问题而受到干扰。 请帮忙。

【问题讨论】:

    标签: android android-widget


    【解决方案1】:

    这已在 1.6 或 2.0 中修复。

    【讨论】:

    • 啊,我不知道修复已经出来了。我仍然尝试编写 SDK 级别 3 以支持最大的受众,这解释了为什么我仍然看到它。
    【解决方案2】:

    您是否检查过您的AppWidgetProvider 中的onDeleted() 在这种情况下是否被调用?我还没有尝试过,但我希望它会起作用。

    如果没有调用,您可以尝试onDisabled(),不过这只有在当时主屏幕上没有您的应用小部件的其他副本时才有效。

    【讨论】:

      【解决方案3】:

      我相信这是当前操作系统中的一个错误,如果屏幕上的小部件没有足够的空间,则永远不会调用 onDeleted() 方法。我知道我至少在 Android 1.5 版中已经看到了这一点。没有我知道的修复方法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-02
        • 1970-01-01
        • 2022-01-19
        • 1970-01-01
        • 1970-01-01
        • 2015-12-30
        相关资源
        最近更新 更多