2017-07-26 8 views
7

私は目覚まし時計アプリを持っており、ユーザーは自分のアラームとしてYouTube動画を設定できるようにしたいと考えています。スマートフォンにイヤホンを差し込んだ状態で寝ると、アラームを聞くことができなくなるということです。STREAM_ALARM経由でYouTubePlayerを再生することは可能ですか

audioManager.setStreamVolume(AudioManager.STREAM_ALARM, stream_music_volume, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE); 

YouTubePlayerと同じことをする可能性はありますか私は音楽ストリームを経由して、それを再生する必要があります:MediaPlayerの上で私は、このコード行を使用して携帯電話のスピーカーを使用するには、アラームを設定することができますか?

答えて

2

これはできません。 YoutubePlayerのストリームタイプは変更できません。
あなたはバックグラウンドでYouTube動画を再生することはできません。
オンラインリソースをアラームとして使用しないでください。ネットワーク接続が利用できない可能性があります。代わりに、メディアファイルをダウンロードしてmediaplayer(オンラインリソースを扱うことができる)を使用し、setAudioStreamType(AudioManager.STREAM_ALARM)でストリームタイプを調整する必要があります。 adjustVolumeまたはAudioManagerのsetStreamVolumeを使用してメディアプレーヤーの音量を調整できますが、MODIFY_AUDIO_SETTINGSの許可が必要な場合があります。バックグラウンドでYoutubePlayerをメディアストリームとして使用する場合は、Do not Dirturb機能をオーバーライドする権限もACCESS_NOTIFICATION_POLICYにする必要があります。

+0

私はバックグラウンドでYouTubeのビデオを再生していません。私はUIのスレッドでそれを再生します。私はビデオをロードできない場合、私はデバイスのデフォルトの着メロを再生するので、私はそこに何か問題があるはずはないと思う。ちょうど私が質問に書いたように、私はメディアプレーヤーを調整する方法を知っていますが、メディアプレーヤーでビデオを再生するためには、私は取得することができますが、確かではないと確信しているYouTubeビデオrtspリンクが必要ですYouTubeのポリシー私はこれまでのところ解決策がないので、あなたの答えは正しいと思います。 – SUXA

0

YouTubePlayer APIについてはわかりませんが、ExoPlayerとすることができます。 APIを使用するとストリームの種類(issue #755参照)を設定でき、YouTube動画を再生できます。 yt videosdemo projectがあります。

+0

ExpoPlayerを使用するには、私はyoutube video rtspリンクを取得する必要があります。これはYouTubeのポリシーでは合法ではありません。 – SUXA

+0

私は分かりません。少なくとも彼らはサンプルとしてYTリンクを提供します。 – Dodge

0

はい、アラームのブロードキャストを受信すると、ウィンドウマネージャとコードを使用して小さなウィンドウを作成して、その中でYouTube動画を再生できます。

+0

私はyoutube video.Butを再生する方法を知っている私は、アラームストリームを介してYouTubePlayerでビデオを再生するのですか? – SUXA

関連する問題