避免在YouTubePlayerFragment init中暂停另一个音频应用程序

我正在研究YouTubePlayerFragment集成。 而在YouTubePlayerFragment初始化YouTubePlayer它从另一个应用程序获取音频,该特定的应用程序停止播放音频即。 播放音乐。

由于用户不会在我的应用的YouTube播放器中触摸播放按钮,因此无法从其他应用获取音频。 那么如何避免这样的问题,让另一个应用程序播放音频?

这是我用Kotlin编写的代码片段。

class MyVideoFragment : YouTubePlayerFragment() { lateinit var mPlayer: YouTubePlayer companion object { fun newInstance(url: String): TutorialVideoFragment { val v = TutorialVideoFragment() val b = Bundle() b.putString("url", url) v.init() v.arguments = b return v } } private fun init() { initialize(DEVELOPER_KEY, object : YouTubePlayer.OnInitializedListener { override fun onInitializationSuccess(arg0: YouTubePlayer.Provider, player: YouTubePlayer, wasRestored: Boolean) { if (!wasRestored) { player.cueVideo(arguments.getString("url")) if (player.isPlaying) { player.pause(); } player.setShowFullscreenButton(true) mPlayer = player } } override fun onInitializationFailure(provider: YouTubePlayer.Provider, errorReason: YouTubeInitializationResult) { if (errorReason.isUserRecoverableError) { // errorReason.getErrorDialog(getActivity(), RECOVERY_DIALOG_REQUEST).show(); } else { val errorMessage = String.format( getString(R.string.error_player), errorReason.toString()) toast(errorMessage) } } }) } } 

我面临同样的问题。 setManageAudioFocus(false)是你所需要的。 您可以通过执行player.setManageAudioFocus(false)来禁用onInitializationSuccess中音频焦点的自动增益,但是请记住您需要手动管理音频焦点。 您可以在这里阅读有关管理音频焦点