无需点击来自 AppWidgetProvider 的任何事件即可开始另一个活动

Posted

技术标签:

【中文标题】无需点击来自 AppWidgetProvider 的任何事件即可开始另一个活动【英文标题】:Start another activity without click on any event from AppWidgetProvider 【发布时间】:2016-10-23 03:58:27 【问题描述】:

在 Activity 中的任何事件上在不点击任何事件的情况下启动 Activity 有很多选项。但是我没有找到任何解决方案来自动启动 Activity 而无需点击 AppWidgetProvider 上的任何事件强>?请给我一个解决方案

【问题讨论】:

请详细解释用户将使用您的应用小部件执行哪些操作以触发 Activity 启动。 @CommonsWare 我将从 webservice 获得结果。所以我会在小部件上显示结果。然后 3 秒后我想打开一个活动。 为什么用户希望你在用户正在做的事情中启动一个活动? @CommonsWare:根据要求,我需要对活动执行一些操作/功能。请给我一个解决方案 @CommonsWare : 你有什么想法吗***.com/questions/37983302/… 【参考方案1】:

我会从 webservice 得到结果

大概,您的 Web 服务请求是从服务发出的。

所以我会在小部件上显示结果。

您的服务将通过与AppWidgetManager 合作来做到这一点。

然后3秒后我想打开一个活动。

欢迎您的服务等待三秒钟,然后致电startActivity()。您需要在传递给startActivity()Intent 中包含FLAG_ACTIVITY_NEW_TASK

反过来,欢迎您的用户给您的应用差评,等等,因为他们在他们已经用设备做的任何事情中打断了他们。从后台工作启动活动很少是正确的解决方案。

请注意,您请求的内容与AppWidgetProvider 无关。

【讨论】:

以上是关于无需点击来自 AppWidgetProvider 的任何事件即可开始另一个活动的主要内容,如果未能解决你的问题,请参考以下文章

AppWidgetProvider:在小部件放置时未调用 onAppWidgetOptionsChanged

从AppWidgetProvider到Broadcastreceiver的意图

如何发送数据?从 [AppwidgetProvider] 到 [Service]

ContentProvider 和 AppWidgetProvider 有啥关系

使用匕首 2 在 Kotlin 中的 AppWidgetProvider 中的字段注入

在不同的包名称下移动 AppWidgetProvider 会破坏活动的小部件