关于java:如何找到不推荐使用的方法的替代品?

How to find a replacement for deprecated method?

我是Android编程的新手。

我一直在遵循有关从此网站创建音乐播放器的教程

本教程要求使用不推荐使用的MediaPlayer类中的setAudioStreamType方法。 哪种方法尤其可以代替此不推荐使用的方法? 而且,是否有资料来源可以找到所有不赞成使用的方法及其当前替代方法?

这是我的代码,其中有关于不推荐使用的方法的警告:

1
2
3
4
5
6
7
8
9
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 Developer文档中查看这些详细信息。

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的参考中找到。

实时示例:Camera类。在javadoc类的末尾,它具有以下内容:

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

您还可以在其中找到新替代方案的链接。如果您在developer.android.com上检查引用,则还可以看到何时不推荐使用(API),并且(如果有新类的话)还可以看到引入的时间。 Android在管理API方面以及要特别考虑到每年都有新API时引入的内容方面有很多工作要做。

至于Javadoc解决方案,可以根据需要进行调整。如果您有X类,但不推荐使用X类。有一个指向类Y的javadoc链接,它代替了类X。出于某种原因,也不建议使用类Y。但是那里有一个javadoc链接,它导致类Z。

上面是一个基本示例,说明了即使不推荐使用X类,也可以找到最新的替换项。不过,在ANdroid编程中要记住的一点是,您可能需要弃用的方法才能在Android上支持较低版本。