我在Android设置中使用此代码保存铃声:
Uri uri = MediaStore.Audio.Media.getContentUriForPath(outPath);
Uri newUri = getContentResolver().insert(uri, values);
此代码保存在:
content://media/INTERNAL/audio/media/[FILE NAME]
我想知道为什么这会在INTERNAL中保存?我的文件实际上是在SD卡上!我不明白为什么!
答案 0 :(得分:0)
如果您的文件路径不是以Environment.getExternalStorageDirectory().getPath()
返回的相同值开头,则该模式将默认为INTERNAL_CONTENT_URI
。确保您的outPath
以适当的路径开头。
来源[MediaStore.Audio.Media]:
public static Uri getContentUriForPath(String path) {
return (path.startsWith(Environment.getExternalStorageDirectory().getPath()) ?
EXTERNAL_CONTENT_URI : INTERNAL_CONTENT_URI);
}