Android:为Mediastore.Audio.Media中的现有记录设置铃声

时间:2010-12-01 20:17:14

标签: android ringtone

当我在Mediastore.Audio.Media中插入行时,我能够完美地设置铃声

 newUri = this.getContentResolver().insert(MediaStore.Audio.Media.getContentUriForPath(k.getAbsolutePath()), values); 

但对于现有记录,即当我再次尝试插入行时,logcat会显示数据库约束错误19.所以我该如何解决这个问题呢?基本上我需要从我的声卡应用程序设置.ogg文件作为铃声,已经存在于媒体库数据库...任何帮助表示赞赏..

1 个答案:

答案 0 :(得分:3)

我明白了。插入前删除数据库中的现有记录。

Uri uri = MediaStore.Audio.Media.getContentUriForPath(file.getAbsolutePath());
getContentResolver().delete(uri, MediaStore.MediaColumns.DATA + "=\"" + file.getAbsolutePath() + "\"", null);

希望这对你也有帮助。