【Android】MediaPlayerでURLから再生するときの設定方法
プログラミング勉強日記
2021年1月15日
昨日の記事でMediaPlayerで音楽を再生する方法について簡単に記述したが、URLから再生する場合には、マニフェストの宣言が必要なので、これも記事として残しておく。
URLから音楽を再生する
MainActivity.java
String url = "http://........";
MediaPlayer mp = new MediaPlayer();
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.setDataSource(url);
mp.prepare();
mp.start();
マニフェストの宣言
String url = "http://........";
MediaPlayer mp = new MediaPlayer();
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.setDataSource(url);
mp.prepare();
mp.start();
MediaPlayerを使用してネットワークの音楽を再生する場合には、ネットワークアクセスを許可する必要がある。
<uses-permission android:name="android.permission.INTERNET" />
ただ、私の場合はこれだけではURLから再生することができなかった。これに加えて、アプリネットワーク設定を用意した。
ネットワークセキュリティの構成
ネットワークセキュリティ構成機能はxmlファイルを使用する。まず、アプリのマニュアルにこのxmlファイルを指すエントリを含める。
<manifest ... >
<application android:networkSecurityConfig="@xml/network_security_config"
... >
...
</application>
</manifest>
次に構成ファイルを作成する。
Android 6.0(API レベル 23)以下を対象とするアプリのデフォルトの構成は以下のようになる。
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" />
<certificates src="user" />
</trust-anchors>
</base-config>
</network-security-config>
ここまで設定して、やっとURLから音楽を再生することができた。(詳しくはAndroid developersのネットワーク セキュリティ構成に書かれている。)
参考文献
Author And Source
この問題について(【Android】MediaPlayerでURLから再生するときの設定方法), 我々は、より多くの情報をここで見つけました https://qiita.com/mzmz__02/items/a76f4c3fb098a7aea02a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .