web-dev-qa-db-ja.com

SetAudioStreamType廃止予定の方法、どのように置き換えることができるか?

MediaPlayerを使用してAndroid Studioでラジオストリーミングアプリを作成しようとしていますが、コンパイル時に次のエラーが表示されます。

非推奨APIを使用または上書きします。 -xlint:詳細については非訴訟と再コンパイルしてください。

私はAndroidドキュメントで検索されました、そして私はSetaudioAttributesのこのメソッドを再扱うべきです、私はそれをどのように変えることができますか? Android Studioを使って新しいです。

ありがとう。

パブリッククラスラジオはフラグメントを拡張する{

_Button play_pause;
MediaPlayer mp;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.radio, container, false);
    play_pause = (Button) view.findViewById(R.id.btnplay);
    try {
           mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
            mp.setDataSource("http://198.27.83.65:9962/;stream.mp3");
            mp.prepareAsync();
     }
     catch (Exception e){
         Toast.makeText(getContext(),"Error" + e,Toast.LENGTH_SHORT).show();
     }
     //mp = MediaPlayer.create(this.getContext(), R.raw.radio);
        play_pause.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                     if(mp.isPlaying()) {
                        mp.pause();
                        Toast.makeText(getContext(),"Stop",Toast.LENGTH_SHORT).show();
                    }
                    else {
                        mp.start();
                        Toast.makeText(getContext(),"Start",Toast.LENGTH_SHORT).show();
                    }
            }
        });
    return view;
}
_

}

8
Jeison Melo

SetAudioAttributes(AudiaAttributes)setAudioStriamType()

Googleドキュメントは次のとおりです。

このMediaPlayerのオーディオストリームタイプを設定します。ストリーム型のリストについては、AudioManagerを参照してください。ターゲットストリームタイプがその後有効になるためにprepare()またはprepleaSync()の前にこのメソッドを呼び出す必要があります。

0
Edgar Khimich

それはすべてのAPIレベルで機能します

MediaPlayer mediaPlayer = new MediaPlayer();
Uri audioUri = Uri.parse(strUri);
    try {
        mediaPlayer.setDataSource(context, audioUri);
    } catch (IOException e) {
        e.printStackTrace();
    }
    try {
        mediaPlayer.prepare();
    } catch (IOException e) {
        e.printStackTrace();
    }
    mediaPlayer.start();
 _
0
Faizan Khan