Устаревшие предпочтения в обоиAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Устаревшие предпочтения в обои

Сообщение Anonymous »

Я новичок в разработке Android. Я пытаюсь построить простое приложение для живых обоев, вдохновленное https://github.com/cyunrei/video-livewallpaper. Одна из модификаций, которые я хочу сделать, - это не использовать файловую систему для хранения предпочтений, какое видео следует использовать, поскольку оно кажется хакерским и не подходящим. Тем не менее, мне не удалось использовать как Datastore , а также SharedPreferences для этой цели. Я думаю, что я скучаю по чему -то основному, это то, что я настроил, и что я ожидал:

[*] Заявление, при котором можно выбрать видео (я все еще на этапе тестирования, и все видео находятся в Res/Raw )
[*] Обои, которые я должен использовать выбранное видео

. Рабочий процесс, чтобы произойти так: < /p>

В деятельности я устанавливаю предпочтения, используя:

Код: Выделить всё

context.getSharedPreferences(VIDEO_PREFS, 0).edit().putInt(VIDEO_ID, res).commit()
, где контекст localcontext.current композиционной функции.
После этого вызова обои изменяются, вызывая:

Код: Выделить всё

Intent(WallpaperManager.ACTION_CHANGE_LIVE_WALLPAPER).apply {
putExtra(
WallpaperManager.EXTRA_LIVE_WALLPAPER_COMPONENT,
ComponentName(context, MyVideoWallpaperService::class.java)
)
}.also { context.startActivity(it) }
< /code>
Я должен признать, что я не полностью понимаю эту часть, она копируется из эталонного репозитория, упомянутого в тексте выше.applicationContext.getSharedPreferences(VIDEO_PREFS, 0).getInt(VIDEO_ID, R.raw.example)
Чтобы быть уверенным, я в настоящее время делаю это каждый раз, когда поверхность видео переключается на видимый. После того, как я выберу другое видео в деятельности для второго (или любых последующих) времен, шаг 3 возвращает старое значение.
То же поведение появляется, когда я использую DataStore контекста вместо чего -то фундаментального? Есть ли более правильный способ достижения того, что я хочу?
Спасибо за вашу помощь

Подробнее здесь: https://stackoverflow.com/questions/789 ... perservice
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»