首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在MediaBrowserService中使用体系结构组件?

如何在MediaBrowserService中使用体系结构组件?
EN

Stack Overflow用户
提问于 2018-03-19 15:55:20
回答 2查看 423关注 0票数 1

我正在尝试制作一个既能播放MediaBrowserService音频又能使用新的架构组件构建整个应用程序的应用程序。我以前在另一个应用程序(https://github.com/willhwongwork/PodCast)中使用过MediaBrowserService,但在那个应用程序中,我没有使用OnGetRoot()和OnGetChildren()方法加载数据,我只是使用loader或asynctask从网络加载数据(并且该应用程序中没有体系结构)。

那么现在,如果我想使用LiveData和ViewModel,我应该如何构造代码呢?我是否应该在MediaBrowserService中使用它们,并通过OnGetRoot()和OnGetChildren()方法将数据提供给UI?

EN

回答 2

Stack Overflow用户

发布于 2018-03-20 13:26:47

不像AppCompatActivity或support FragmentLifecycleOwner,因为我们可以使用ViewModelProvidersLiveDataobserveService不实现LifecycleOwner接口。

也就是说,有实现LifecycleOwner接口的LifecycleService。我不认为MediaBrowserService实现了LifecycleOwner,因此您需要使用ServiceLifecycleDispatcher并创建一个自定义的MediaBrowserService

注意:也请看一下弗洛丽娜对生命周期服务的看法:https://github.com/googlesamples/android-architecture-components/issues/137

票数 0
EN

Stack Overflow用户

发布于 2018-06-25 03:04:59

您可以使用onLoadChildren()方法加载数据块,使用新的Paging library,它是Android Architecture组件的一部分。我写了一个关于它的post,其中我使用游标从MediaStore获取MediaItems,但是同样的事情也可以用LiveData来完成

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49358090

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档