如何在javagui游戏中使用不推荐的音频api

vawmfj5a  于 2021-07-09  发布在  Java
关注(0)|答案(1)|浏览(289)

所以我正在编写一个java游戏,我想在达到某一点时添加一个声音效果。我在一个.wav文件中的声音效果与java文件本身在同一个目录中。
我使用了这个问题的一个答案:java计算器按键发声的最佳方法?为了得到音频播放-它做得很好(所以我的代码工作)。但是,问题是我的编译器说我正在使用或重写一个不推荐使用的api,我不确定我是否希望它发生。
下面是相关的代码(可以工作,但使用的是不推荐使用的api):

String soundName = "NoGodNo.wav";    
        URL soundbyte = new File(soundName).toURI().toURL();
        java.applet.AudioClip clip = java.applet.Applet.newAudioClip(soundbyte);
        clip.play();

我做了一些研究,发现音频剪辑被否决了:https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/applet/audioclip.html,并且根据此链接它没有替换。
有没有办法通过完全替换代码来克服不推荐使用的api消息(因为audioclip没有替代品)。
提前谢谢!

cu6pst1q

cu6pst1q1#

没关系,我知道了。以下是不使用已弃用API的答案:

try 
    {
        String soundName = "theme_audio.wav";    
        AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(new File(soundName).getAbsoluteFile());
        Clip clip = AudioSystem.getClip();
        clip.open(audioInputStream);
        clip.start();
    } catch (Exception e) {}

谢谢!

相关问题