Разница между обновлением с ContentUris.withAppendedId и без него - PullRequest
0 голосов
/ 19 июня 2020

Я разрешаю пользователям моего плеера переименовывать названия треков в mp3-файлах. Для этого я использовал следующий блок:

ContentValues values = new ContentValues();
values.put(MediaStore.Audio.Media.TITLE, trackName);
trackResolver.update(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, values, MediaStore.Audio.Media._ID + "= ?", new String[] { String.valueOf(trackId) }) 

Это работает без проблем. Хотя это не работает на Android Q. Следующее работает на всех системах, которые я тестировал, включая Android Q:

Uri uri = ContentUris.withAppendedId(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, trackId);
ContentValues values = new ContentValues();
values.put(MediaStore.Audio.Media.TITLE, trackName);
trackResolver.update(uri, values, null, null) 

В чем разница между обоими подходами? Могу ли я безопасно использовать второй подход со всеми системами?

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