如何找到已弃用方法的替代品?

How to find a replacement for deprecated method?

我是 Android 编程新手。

我一直在关注 this website

创建音乐播放器的教程

本教程从 MediaPlayer Class 调用 setAudioStreamType 方法,已弃用。哪种方法特别取代了这个已弃用的方法?而且,是否有我们可以找到所有已弃用方法及其当前替代方法的来源?

这是我的代码,其中有关于已弃用方法的警告:

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);
}

使用 setAudioAttributes(AudioAttributes) 而不是 setAudioStreamType()

您可以在 Android 开发者文档中查看这些详细信息。

https://developer.android.com/reference/android/media/MediaPlayer.html#setAudioStreamType(int)

要了解最新变化,您可以查看 Android 开发者博客: https://android-developers.googleblog.com/

如果您按住 CTRL 并左键单击一个方法,您会找到方法声明。这是使用其内容和 javadoc 创建方法的地方。已弃用方法的 Javadoc 通常包含一个 @deprecated 注释,其中提到新的 API 以及何时弃用。

除了 javadoc 信息外,还可以在 developer.android.com 的参考资料中找到。

实例:相机 class。在 class javadoc 的末尾有这样的内容:

/**
 * (other declarations, and last)
 * @deprecated We recommend using the new {@link android.hardware.camera2} API for new
 *             applications.
 */

您还可以获得新选择的 link。如果您在 developer.android.com 查看参考资料,您还可以看到它何时被弃用 (API) 并且(如果您有新的 class)您可以看到它何时被引入。 Android 在谈到 API 时有很多需要管理的东西,特别是考虑到每年都有一个新的 API 时引入了什么。


Javadoc的解决办法,大家可以照着看。如果您有 class X,但 class X 已弃用。有一个 javadoc link to class Y,它取代了 class X。出于某种原因,class Y 也被弃用了。但是那里有一个 javadoc link 导致 class Z.

以上是如何找到最新替代品的基本示例,即使 class X 的替代品已弃用。不过,在 ANdroid 编程中要记住的一点是,您可能需要弃用的方法来支持 Android.

上的较低版本