Size: a a a

Android Developers

2020 August 13

Y

Yank in Android Developers
что за ошибка? кто может помочь ?
источник

RC

Roman Chumachenko in Android Developers
Yank
что за ошибка? кто может помочь ?
Это ты библиотеку втащил на проект, как модуль?
источник

DU

Dmitry Upovalov in Android Developers
Roman Chumachenko
Я думал, что для корректной работы пагинации, нужно отдавать в коллбэк, что передается в методы datasource. В итоге туда данные и отдавал в случае успеха
вот пример обработки ошибок с использованием вспомогательного класса (контейнера) LoadResult: https://github.com/android/architecture-components-samples/blob/master/PagingWithNetworkSample/app/src/main/java/com/android/example/paging/pagingwithnetwork/reddit/repository/inMemory/byPage/PageKeyedSubredditPagingSource.kt
источник

RC

Roman Chumachenko in Android Developers
Ох лол, что ж они это нигде в вводных статьях не показывали. Спасибо большое!
источник

VT

Valery Tamashevich in Android Developers
ребята при вызове in app review диалог сразу же закрывается, было такое у кого?
источник

VT

Valery Tamashevich in Android Developers
источник

EG

Evgeny GooDi in Android Developers
Как определить что приложение запущено? Мне надо в этом случае по клику на нотификейшн просто удалить нотификейшн и остаться на том же экране
источник

DU

Dmitry Upovalov in Android Developers
тебе, скорее всего, не нужно определять, что приложение запущено. так как pending intent ты не поменяешь. наверное нужно правильно обрабатывать интент от нотификации (не пересоздавать активити).
источник

RH

Remie Hamilton in Android Developers
Денис
Вопрос адресую тем, кто разбирается с LiveData. Я в нее методом postvalue эмичу в определенных ситуациях set, он может быть одинаковым, там где я подписываюсь, я постоянно "проваливаюсь" в observer, не смотря на то, что использую fun observeLiveData(): LiveData<HashSet<Е>> =myLiveData.distinctUntilChanged()
Вангую, что такое происходит, что distinctUntilChanged сравнивает предыдущий элемент с текущим по адресу сперва
Кто знает, как можно переписать distinctUntilChanged, так чтобы он сравнивал предыдущий сет с нынешним поэлементно, и эмитил данные толко в случае если значения сетов отличаются?
fun LiveData<MyClass>.notifiedData(): LiveData<MyClass?> {
       val distinctLiveData = MediatorLiveData<MyClass?>()
       distinctLiveData.addSource(this, object : Observer<MyClass?> {
   
           private var lastObj: MyClass? = null

           override fun onChanged(obj: MyClass?) {
              if (obj.type != lastObj?.type) {
                   lastObj = obj
                   distinctLiveData.postValue(lastObj)
               }
           }
       })
       return distinctLiveData
   }
источник

DU

Dmitry Upovalov in Android Developers
Evgeny GooDi
Как определить что приложение запущено? Мне надо в этом случае по клику на нотификейшн просто удалить нотификейшн и остаться на том же экране
а вообще есть способы не показывать нотификации вообще, если приложение в фореграунде. тогда и проблемы с кликом не будет.
источник

EG

Evgeny GooDi in Android Developers
Dmitry Upovalov
тебе, скорее всего, не нужно определять, что приложение запущено. так как pending intent ты не поменяешь. наверное нужно правильно обрабатывать интент от нотификации (не пересоздавать активити).
о! а как это сделать?
источник

Д

Денис in Android Developers
Remie Hamilton
fun LiveData<MyClass>.notifiedData(): LiveData<MyClass?> {
       val distinctLiveData = MediatorLiveData<MyClass?>()
       distinctLiveData.addSource(this, object : Observer<MyClass?> {
   
           private var lastObj: MyClass? = null

           override fun onChanged(obj: MyClass?) {
              if (obj.type != lastObj?.type) {
                   lastObj = obj
                   distinctLiveData.postValue(lastObj)
               }
           }
       })
       return distinctLiveData
   }
👍 спасибо
источник

EG

Evgeny GooDi in Android Developers
активити в приложении много.
источник

DU

Dmitry Upovalov in Android Developers
Evgeny GooDi
активити в приложении много.
интент не обязательно должен запускать активити
источник

DU

Dmitry Upovalov in Android Developers
можно пускать бродкаст
источник

DU

Dmitry Upovalov in Android Developers
в UI регистрировать бродкаст ресивер
источник

EG

Evgeny GooDi in Android Developers
Dmitry Upovalov
интент не обязательно должен запускать активити
источник

EG

Evgeny GooDi in Android Developers
сейчас у меня так
источник

DU

Dmitry Upovalov in Android Developers
это запуск стандартной активити из ланчера
источник

EG

Evgeny GooDi in Android Developers
ну вот надо как то не делать это если уже запущено приложение
источник