是否可以在“服务”中获取对象“FragmentManager”?是否可以从“服务”中的“活动”传递对象“片段管理器”。
PS:包括非官方支持的功能。
是否可以在“服务”中获取对象“FragmentManager”?
不,对不起。
是否可以从“服务”中的“活动”传递对象“片段管理器”。
那将是一个非常糟糕的主意。
如果您希望您的服务更新您的 UI,请记住可能没有 UI。欢迎用户按他们的 BACK 或 HOME 按钮退出您的 UI,即使您的服务正在运行。
还要记住,它可能是不同的 UI。例如,当用户将设备从纵向旋转到横向时,您的活动(和片段,默认情况下)将被销毁并重新创建。或者,用户可以点击某些东西,将不同的活动带到前台,并且该活动有自己的片段和管理器。
因此,要让您的服务更新您的 UI,您需要使用支持这种解耦操作的通信路径,例如:
LocalBroadcastManager
ContentProvider
,活动使用CursorLoader
或ContentObserver
收到有关数据更改的通知