Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JLayer是否受Android支持_Java_Android - Fatal编程技术网

Java JLayer是否受Android支持

Java JLayer是否受Android支持,java,android,Java,Android,我看到了很多关于在Android中使用.mp3文件的问题,很多问题都接受了答案,这意味着他们成功地使用JLayer处理了.mp3文件 我下载了.jar,并将其导入到我的项目中。然后,我实现了以下功能以测试它是否正常工作: AssetFileDescriptor assetFileDescriptor = getApplication().getAssets().openFd("testing.mp3"); FileDescriptor fileDescriptor = assetFileDesc

我看到了很多关于在Android中使用.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;
我做了一些研究,发现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,那么其他人是如何让它工作的呢如问题所示..

继续-第一个代码片段或多或少是您应该如何解码数据tw为什么必须使用JLayer?@pskink我在网上找到了使用JLayer的NetBeans项目。我正在尝试为android构建这个项目。如果愿意,我可以删除JLayer并用MediaPlayer替换它,但我决定尝试使用JLayer。有理由不使用它吗?当然可以使用,但性能会受到影响。。。