因需要判断设置的来电铃声在文件系统是否存在,在源码RingtoneManager.java里的getActualDefaultRingtoneUri(Context context, int type)里增加了如下代码:
File file=new File(file_path)//file_path为已知存在SD里的文件,如:"/mnt/sdcard/recordings/test.mp3" if(file.exists()) { return true; } else { return false; }
若当file_path指向SD卡中的文件时该段代码始终返回的false(文件确实存在,且路径和名字都没有错),不知为何,请大家指点下。若当file_path指向系统内存中的文件时,则正常。