Android是否支持JLayer

时间:2018-07-18 05:03:20

标签: java android

我已经看到很多有关在Android中使用JLayer播放.mp3文件的问题,其中许多问题都接受了答案,这意味着它们成功地使用JLayer处理了.mp3文件。

我下载了.jar并将其导入到我的项目中。然后,我实现了以下内容以测试其是否有效:

AssetFileDescriptor assetFileDescriptor = getApplication().getAssets().openFd("testing.mp3");
FileDescriptor fileDescriptor = assetFileDescriptor.getFileDescriptor();
FileInputStream stream = new FileInputStream(fileDescriptor);
//JLayer below
Player player = new Player(stream);
player.play();

运行我的应用程序时,出现以下错误:

java.lang.NoClassDefFoundError: Failed resolution of: Ljavax/sound/sampled/AudioFormat;

我做了一些研究,found发现android不支持javax。我浏览了JLayer.jar,发现在JavaSoundAudioDevice.java中有以下导入:

import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Line;
import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.SourceDataLine;
import javax.sound.sampled.DataLine.Info;

因此,如果android不支持javax且JLayer使用javax,那么其他人如何使它工作? -如this问题中所示。.

0 个答案:

没有答案