我想做什么:
使用google exoPlayer播放音乐,前景和背景。
闯入细节:
PlayerNotificationManager
)我做了什么: 我在这个链接上关注了谷歌IO18 https://www.youtube.com/watch?v=svdq1BWl4r8&t=1990s
虽然我正在关注上面的youtube链接,特别是音频应用程序部分,但我意识到一件事,你如何将玩家控制UI添加到这个应用程序中?
例如,应用程序是onDestory,用户退出。然后用户点击通知,回到MainActivity,那里什么都没有,它是一个空屏幕,问题是,你如何在这里添加播放控制ui?
我已经调查https://github.com/googlesamples/android-UniversalMusicPlayer了解这个问题。但是,通用Android音乐播放器示例使用了一个巨大的通知(不是PlayerOotificationManager在IO18上看到)和自定义播放器ui(非ExoPlayer开箱即用控制UI),这让我很困惑。
拜托,请帮忙。 如何在以下代码中添加播放器控件ui。 https://github.com/bizkitj/MediaSessionExoPlayer/tree/ExoPlayerGoogleIO2018
如果可以的话,请不要告诉我你是怎么做的,我还需要知道你为什么这么做?分成几步。
正在使用的ExoPlayer版本:
implementation 'com.google.android.exoplayer:exoplayer-core:2.8.0'
implementation 'com.google.android.exoplayer:exoplayer-ui:2.8.0'
implementation 'com.google.android.exoplayer:extension-mediasession:2.8.0'
请注意,我想在googleIO18演示应用上添加内容。这个演示应用程序正在使用exoPlayer PlayerNotificationManager
,这非常适合与MediaSession
保持同步,我不想将此PlayerNotificationManager
更改为android Notification.MediaStyle
。
谢谢。
答案 0 :(得分:1)
由于您的问题是关于管理UI的一些最佳实践,所以我尝试用一些一般性的想法进行解释:
1-您需要一个后台服务来播放音频并返回START_NOT_STICKY
2-一旦您的PlayerNotificationManager
监听者用一些notificationId
和notification
回呼,它就会开始forground
3-在“活动”中,您绑定到播放音乐的后台服务。最好在onStart
中发生
4-取消与onStop
通过这种方式,您将可以访问在后台服务中运行的ExoPlayer实例,并且可以根据需要将侦听器,视图等附加到该实例。然后,您将可以检查是否有任何东西可以调出正确的用户界面
希望对您有帮助。祝你好运