Android:在本地保存录音?

时间:2012-03-15 20:57:53

标签: android audio save local recording

如何将文件保存到Android手机而不是SD卡?我知道对于sdcard你做的方式是调用Environment.getExternalStorageDirectory()。getAbsoluteDirectory();或类似的东西,无论如何,我有它的工作方式。但是我希望能够保存到我的手机中,我是否需要在我的清单中获得许可才能这样做?我已经尝试将getexternalst ....替换为getDataDirectory,但这似乎没有用。

一如既往,请和谢谢:)

EDIT ---------------

03-15 21:29:26.213:W / dalvikvm(21686):threadid = 1:线程退出,未捕获异常(group = 0x2aac8578) 03-15 21:29:26.213:E / AndroidRuntime(21686):致命异常:主要 03-15 21:29:26.213:E / AndroidRuntime(21686):java.lang.RuntimeException:无法实例化活动ComponentInfo {com.alphaphonefinder / com.alphaphonefinder.Main}:java.lang.NullPointerException

2 个答案:

答案 0 :(得分:0)

您可以使用Context#getFilesDir

以字符串形式获取完整路径(假设this是活动):

String path = this.getFilesDir().getAbsolutePath();

答案 1 :(得分:0)

最简单的方法是调用Context#openFileOutput(String, int),它接受​​一个String作为文件名,一个int指定模式并返回一个FileOutputStream。然后在FileOutputStream上调用write,传递数据的字节数组。确保在完成后关闭FOS。

编辑: 如果您只想要内部文件目录,请尝试返回文件的Context#getFilesDir,文件上的getPath()getAbsolutePath()将以String形式返回目录。