MediaStore.Audio.Media.EXTERNAL_CONTENT_URI:音频对应的uri将毫秒数的时间格式化成时间的形式:
public static String formatDuration(int time){ String formatTime = null; int sec = time / 1000; int min = sec % 3600 / 60; int hour = sec / 3600; int seconds = sec % 3600 % 60; if (hour > 0) { formatTime = String.format("%02d:%02d:%02d", hour, min, sec); } else { formatTime = String.format("%02d:%02d", min, seconds); } //Log.i(TAG, "formatTime = " + formatTime); return formatTime; }
看到的程序好像到处都用到了观察者模式(lisener):一般都是观察状态的改变几个静态方法:
(1)//得到不包含后缀的文件名
//得到不包含后缀的文件名 public static String getName(String name){ //Log.i(TAG, "name = " + name); return name.substring(0, name.lastIndexOf(".") - 1); }
(2)//录音文件的格式
static final String[] ALL_SUFFIX = {"3gpp", "amr"};
//判断给定文件是不是录音 文件 public static boolean isRecordSound(File file){ String name = file.getName(); String suffix = name.substring(name.lastIndexOf(".")+1, name.length()); for (int i = 0; i < ALL_SUFFIX.length; i++) { if (ALL_SUFFIX[i].equals(suffix)) { return true; } } return false; }