ContentResolver.insert возвращает ноль - PullRequest
4 голосов
/ 03 декабря 2010

У меня иногда возникают проблемы при установке звуков в качестве мелодий звонков / уведомлений изнутри занятия:

ContentValues values = new ContentValues();
values.put(MediaStore.MediaColumns.DATA, source);
values.put(MediaStore.MediaColumns.TITLE, "abc");
values.put(MediaStore.MediaColumns.SIZE, new File(source).length());
values.put(MediaStore.MediaColumns.MIME_TYPE, mime);
values.put(MediaStore.Audio.Media.ARTIST, "xyz");
values.put(MediaStore.Audio.Media.IS_RINGTONE, true);
values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);

final Uri curi = MediaStore.Audio.Media.getContentUriForPath(source);
Uri uri = getContentResolver().insert(curi, values);

в большинстве случаев URI выглядит примерно так:, но иногда это ноль.Я не знаю, в чем проблема, аудио файлы в порядке (они воспроизводятся нормально) и, очевидно, метод вставки не выдает никаких исключений.Я просмотрел документацию, но нет ничего о методе, возвращающем нуль.В чем может быть проблема?

Ответы [ 2 ]

5 голосов
/ 04 декабря 2010

Поставщики контента еще не поддерживают удаленные исключения. Я бы посмотрел в logcat, когда ты получаешь нулевой Uri. Я подозреваю, что медиа-провайдер выдаст какое-то исключение

0 голосов
/ 03 декабря 2010

23, 24 должно быть громкостью вверх и вниз для носителя. Ури должен быть таким же.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...