这是我对我的小部件和主应用程序的简短描述。对不起,因为我的英语(英语不是我的母语)
我有一个音乐播放器窗口小部件。当此小部件启用时,我需要绑定到主应用程序的音乐播放器服务(A)。因为我们不能在AppWidgetProvider中绑定服务,所以我在AppWidgetProvider中启动了一个本地服务(B),并从这里绑定到那个音乐播放器服务(A)。此外,我还有一个C服务来实现小部件的按钮功能。
一切似乎都很正常,但当我的主应用程序与服务A都被强制停止时(它们将在稍后重申),我必须从小部件重新绑定到A。问题是,当main应用程序被强制停止时,我不能重新绑定到A,因为Context (每当我从onEnabled,onUpdate接收到context时,我都会将context作为全局变量存储在AppWidgetProvider中)为空。
我的问题是,我上面的小部件结构如何?绑定到A后,服务B是否应该停止?当主应用程序和服务A被强制停止(但它们将在片刻后自动重启)时,我如何再次绑定到服务A。
谢谢你!
发布于 2011-12-28 12:01:19
回答我自己的问题
首先,我们可以从widget绑定服务,使用context.getApplicationContext().bindService(..)
MyMainApplication.Instance().getApplicationContext().bindService(..)
再次绑定服务
https://stackoverflow.com/questions/8612367
复制相似问题