Ivansuper
Тебе сервис зачем нужен?
Ivansuper
Anonymous
Anonymous
Но зато 100% напролом работать будет)
Vadim
Кстати вообще мне сервис вроде не нужен
Ivansuper
Можно сделать ход конем и организовать все в удобном месте и классе. Но сервис просто запускать и останавливать
Ivansuper
Если ты будешь качать данные игры (например), то нужен
Ivansuper
Юзер может свернуть игру пока качает
Vadim
Я для этого DW manager юзаю
Vadim
Мне как раз нужна прослойка удобная для него
Ivansuper
Но не обязательно "писать код в классе сервиса мол он в сервисе выполняется". Ты можешь его поднять только для того чтобы не убило приложение
Vadim
Ладно, спасибо. Попробую без сервиса сообразить, на схеме он у меня вообще не в тему
Vadim
Просто класс пойдет
Ivansuper
Ну смотри сам по ситуации
Аброр
не отрисовываются превьюшки, с версией v7:28.0.0
тут говорили добавлять в стили Base, когда с поддержкой ActionBar всё нормально
Аброр
как поступить если мне надо убрать actionbar
Аброр
если кому то пригодится - https://stackoverflow.com/questions/52017124/android-studio-3-1-4-rendering-problems-for-design-blueprint
Глеб
Господа! такой вопрос: 🤔
а как вы эрыксом ошибки отлавливаете...?
точнее как отлавливать чтобы источник не закомплитился?
тупо всё маппить в "",-1, empty, Nan и проч? или как-то покрасивше можно?
Ivansuper
А почему не отдавать данные в контейнере, внутри которого есть булево "обосралось"?
Глеб
Не ... ну можно и так ... я вот и спрашиваю кто как делает
... можно Optional н-р пустой и тд....
ща наткнулся на "retry" (Reactor3) - вроде обещают рестарт sequence by error
Глеб
По-ходу это общее reactive-поведение в любой либе,
что эррор - терминален
Сергій
https://android-developers.googleblog.com/2018/10/modern-background-execution-in-android.html
Сергій
радуйтесь что хоть так можно, на iOS и так нельзя =)
Ivan
A
Сергій
но скоро и у нас не будет
A
Сергій
Глеб
радуйтесь что хоть так можно, на iOS и так нельзя =)
вот смотри... меня ща закидают яйцами... ну да ладно
только когда мы нормально заимплементили contentProvider (process=":storage") - стала возможна нормальная поддержка работы в schedulerService(process=":background") и подписка планировщика на uri-content-changes для синхронизации в фоне....
и это всё работает... хорошо ... очень гибко... но это жесть
Сергій
A
например?
A
в ios
Сергій
Глеб
Сергій
Глеб
Сергій
JobScheduler при правильном обращении очень удобная вещь
Daniil
Народ, Гугель еще не придумал способ InApp-рейтинга, чтобы прямо из приложения можно было звездочки ставить? По старинке надо Google Play Intent слать?
Daniil
Или может 3rd party есть че?
A
сайлент пуши?
ну ты сильно не сможешь злоупотреблять, и как минимум они не работают если приложение не в оперативке
Сергій
у вас вообще если приложение убрали из меню недавних, ничего нельзя в фоне делать )
Глеб
зато телефон наконец-то не садится до обеда )
то есть понимаешь, мне скажем чтобы из аппа в службу спокойно перетащить какой-нибудь syncSmth(). нужно либо дефолт процесс иметь, либо если делать "отдельно" - железно знать что storage общий, консистентный и data-changes общие
... и тут пройдя 100 огордов с бродкастами - в итоге возвращаешься к стандартному контент провайдеру - и всё шикардос...
но писанины - жесть 😕
Сергій
Глеб
🤷♂️
Вот поэтому на их правильные советы смотришь - и всё верно, и не поспорить,
... но слёзы наворачиваются и бровь подёргивается 😁
Ivansuper
А если не броадкасты, а бинд к сервису в приложении и по AIDL сделать что требуется?
Ivansuper
На том конце синхронизировать
Глеб
🤷♂️
ну кстати подписка джобскедулера на ContentUri changes с мин24 - шикарная штука. Работает!
То есть если ты локально чет поменял у себя в провайдере, планировщик ловит uri-change и стартует н-р синк с бэком, либо до ближайшего коннекта в интернет 👍
Глеб
🤷♂️
https://developer.android.com/reference/android/app/job/JobInfo.Builder.html#addTriggerContentUri(android.app.job.JobInfo.TriggerContentUri)
Сергій
Сергій
замена броадкастам на видео/фото
Sergey
Народ, как лучше быть с ситуациями, когда загружаются данные, например, отправлен запрос на сервер для логина - использовать ProgressBar и блокировать весь интерфейс или не блокировать, а отменять запросы?
Ivansuper
С логином всегда показывается какая-нибудь штуковина, которая занимает пользователя пока программа логинится на сервер.
Ivansuper
И зависит от типа данных и смотря как они в ТЗ описаны
Ivansuper
Условно, ты можешь открыть экран, пойдет обновление. Можешь переоткрыть экран — старое пойдет в молоко/отменится, новый запрос пойдет
Dmytro
Вопрос: надо спарсить rates, но поскольку он не массив, а именно объект, то не совсем понимаю, как это можно сделать. Кто может подсказать решение?
Ivansuper
(притянуто, но в целом для примера)
Ivansuper
Ivansuper
Помоему Gson нормально распределяет по мапам
Ivansuper
Бар тебе не нужен, потому что тут нет никаких процентов
Ivansuper
ProgressDialog устарел или нет хз. Его можно обернуть в DialogFragment и вперед
Ivansuper
Иногда блочат поля ввода, а вместо кнопки или в самой кнопке начинают крутить что-то
Ivansuper
Можно крутить задизейбленные поля ввода
Ivansuper
(нет)
Konstantin
вокруг оси
Ivansuper
Anonymous
Если ты его юзаешь в слепом ините
Ivansuper
Там есть метод onAttached или как то так
Ivansuper
После него можно брать
Ivansuper
Ну и не надо брать после onDestroy
Anonymous
Ну типа в переменной экземпляра присваиваешь сразу значение где юзается метод
Anonymous
Да, я там всегда беру
Ivansuper