【发布时间】:2018-01-22 19:13:21
【问题描述】:
如果我在 jar 库中有这个方法:
public void playAudioFile()
{
ClassLoader cLoader = getClass().getClassLoader();
URL url = cLoader.getResource("audio.mp3"); // in the resource of the jar library
System.out.println(url.toString());
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource(url);
}
编译库后,我有:MySDK.jar
当我将 MySDK.jar 添加到我的 android 应用程序并尝试播放音频文件时:
private void playAudio()
{
MySDK.Audio audio = new MySDK.Audio();
audio.playAudioFile();
}
编译android应用后,我有:mysampleapp.apk
调试应用时,无法播放音频文件,原因是:
System.out.println(url.toString());
给予:
jar:file:/data/app/com.mysampleapp.apk!/audio.mp3
音频的路径应该来自 jar 文件而不是来自示例应用程序。因此,无法播放音频文件。
我做错了什么,如何将音频文件作为 jar 库中的资源文件播放?
【问题讨论】:
-
您可能一开始就不应该将音频文件存储在 JAR 文件中。在 SD 卡/数据库上使用一些应用程序存储。
标签: java android android-mediaplayer