我正在使用 android 应用程序动态生成 midi 文件(在缓存目录中)。
生成后,我在同一个应用程序中使用 MediaPlayer 播放文件。
第一次运行应用程序时,它已经需要文件在缓存目录中(应用程序崩溃)。如果我先使用文件管理器将虚拟文件放在那里,它可以在模拟器上运行。我该如何规避这个?
我需要该应用程序首次在平板电脑上运行,而不需要文件。
我现在正在使用这些命令:
try {
filePath = getCacheDir() + "/optimuse" + song + ".mid";
file = new File(filePath);
inputStream = new FileInputStream(file);
if (inputStream.getFD().valid()) {
System.out.println("Valid!");
}
} catch (Exception e1) {
e1.printStackTrace();
System.exit(-1);
}
try {
mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource(inputStream.getFD());
inputStream.close();
} catch (Exception e1) {
e1.printStackTrace();
System.exit(-1);
}
try {
mediaPlayer.prepare();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
有没有办法解决?
谢谢!