I am new to Android programming.
I have been following a tutorial on creating a Music Player from this website
The tutorial calls for a setAudioStreamType
method from MediaPlayer
Class which is deprecated. Which method replaces this deprecated method in particular? And, is there a source where we can find all deprecated methods and its current alternative?
Here is the code I have where there is a warning about a deprecated method:
public void initMusicPlayer(){
//set player properties
player.setWakeMode(getApplicationContext(),
PowerManager.PARTIAL_WAKE_LOCK);
player.setAudioStreamType(AudioManager.STREAM_MUSIC);
player.setOnPreparedListener(this);
player.setOnCompletionListener(this);
player.setOnErrorListener(this);
}
Use setAudioAttributes(AudioAttributes)
instead of setAudioStreamType()
.
You can see these details in the Android Developer documentation.
https://developer.android.com/reference/android/media/MediaPlayer.html#setAudioStreamType(int)
To follow the latest changes, you can check the Android Developer blog: https://android-developers.googleblog.com/
If you press CTRL+left click on a method, you find the method declaration. That is where a method is created with its contents and javadoc. Javadoc for deprecated methods often include a @deprecated
annotation where it mentions the new API and when it was deprecated.
In addition to the javadoc information can also be found in the reference at developer.android.com.
Live example: the Camera class. At the end of the class javadoc it has this:
/**
* (other declarations, and last)
* @deprecated We recommend using the new {@link android.hardware.camera2} API for new
* applications.
*/
There you also get a link to the new alternative. If you check the reference at developer.android.com you can also see when it was deprecated (API) and (if you have a new class) you can see when that was introduced. Android has a lot to manage when it comes to API's and what was introduced when especially considering there is a new API each year.
As for the Javadoc solution, it can be followed as far as you want. If you have class X, but class X is deprecated. There is a javadoc link to class Y, which replaces class X. For some reason class Y is also deprecated. But there is a javadoc link there that leads to class Z.
Above was a basic example of how you can find the newest replacements, even though the replacement for class X is deprecated. Something to keep in mind in ANdroid programming though, is the fact that you may need the deprecated methods to support lower versions on Android.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With