Андрей
и отправляешь изменение на вью через отдельную лайвдату
Андрей
и при восстановлении действуешь через нее же, в смысле оно само)
Alexey
да, кажется, это оно. Я совсем забыл про кейс SingleLiveEvent
Alexey
@DEADMC спасибо!
Alexey
да, кажется, это оно. Я совсем забыл про кейс SingleLiveEvent
про все эти классические случаи со снекбарами и тд
Андрей
тут мб даже наоборот, запрашивать только в onResume активити или фрагмента обновление вью из вьюмодели
Андрей
а так в обычном случае только через сингл лайвдату слать и все
Андрей
без всяких обновлений после, т.к. вью уже будет в нужном состоянии
Андрей
иначе опять в цикл уйдет
Андрей
почему?
Alexey
да пробовал я с разными методами жизненного цикла
Андрей
так с 2мя разными лайвдатами
Андрей
еще раз
Alexey
ааа
Alexey
ну так с двумя разными не принципиально же
Андрей
жмешь на спиннер -> singleLiveEvent -> viewModel сохраняет стейт
Андрей
и все
Alexey
в каком из методом жц, лишь бы вью была доступна
Андрей
в onResume -> viewModel.restoreState -> livedata -> spinner
Андрей
с двумя разными принципиально если каждый раз после сингла дергать обычную лайвдату - опять будет цикл
Alexey
с двумя разными принципиально если каждый раз после сингла дергать обычную лайвдату - опять будет цикл
так суть способа не в том, чтобы именно в onResume это все делать и дергать обычную лайвдату, а как раз проксирующую
Alexey
или я не так понял?
Андрей
мб я не очень тебя понял
Alexey
для каждого LiveData-поля создается еще одно SingleEvent поле, через которое мы будем работать во вью
Андрей
Никита 🙃
А в чём может быть загвоздка. У ScrollView после добавления View, который по высоте больше экрана, в LinearLayout делаю smoothSrollBy(0, target) где target = linear.measuredHeight - newView.measuredHeight до API 25 (включительно) работает так как надо. Но после оно скроллит не до конца. В чём прикол?
Андрей
просто флагом смотреть типа надо singleliveevent отправлять или нет?
Alexey
опять цикл получается
Alexey
опять цикл получается
восстанавливай состояние до подписки
Alexey
а, нет, все, я врубился вью триггерит изменение в ВМ по сингл эвенту, а когда мы восстанавливаем состояние, то не триггерит попросту, да и все
Alexey
восстанавливай состояние до подписки
нет, не выходит. Допустим, состояние восстанавливается в onActivityCreated, а изменения отсылаются в onViewCreated, то все равно будет цикл, очевидно
hex
Ребят, по поводу подписи вопрос. Если у меня пакет com.abc.def.jik, из этого что-то обязательно должно участвовать в параметрах подписи? в .jks. А то подписал, а устанавливаться не хочет, пишет "There is a problem while parsing the package”. Спасибо
hex
просто дичь какая-то непонятная. инсталю апкашку в планшет (android 5.1), всё норм, в смартфон 6.0 - ошибка парсинга пакета. в 4.4 пробовал - то же самое. мин 5.1 стоит, чисто попробовать
Artur
Мужики, чем по вашему плоха строчка if (subscription?.autoPayment!!). Это моделька ответа
Сергій
Build > Clean Project?
с телефона
Artur
Ну раз nullable, то что поделать
hex
с телефона
само приложение в 6.0 и не установилось, апкашка удалена
hex
или ты о чем?
hex
как собирал апк файл?
Build > Generate Signed APK
Сергій
Build > Generate Signed APK
до этого на телефоне было это приложение? может быть дебаг сборка?
hex
нет
Сергій
minSDK какой у приложения?
hex
на том планшете где дебаг версия была, не раз запускал по шнуру, аркашку ставил и т.д.
hex
22
hex
таргет 28
Сергій
какой-то особенный телефон?
hex
compileSdkVersion естественно 28
Konstantin
есть feature-module dependencies: project api(':base') есть base-module dependencies: impl com.android.material - материал-дезигн либа. при работе в дизайн-редакторе во feature-module ругается что надо подключить материал-дезигн, как победить? ругается когда руками таскаю вьюшки по component tree, в остальном все и так работает ок
hex
нет, обычный, Samsung Galaxy S5
Сергій
нет, обычный, Samsung Galaxy S5
установка с неизвестных источников разрешена?
hex
ну это клиентам не объяснишь)
Аброр
всем привет. Кто нибудь работал с API amoCRM?
Сергій
естественно
тогда установи с помощью adb команды с смотри ошибку
Dmitriy
нет, обычный, Samsung Galaxy S5
У самсунгов, с тачвизом, была проблема с тем что может быть несколько пользователей в телефоне и удаление не совсем удаляет приложение, то есть в списке приложений его не видно, но в настройках где приложения, оно есть. У меня это на планшете самсунговском активно воспроизводилось, проверь и ты
Сергій
Samsung 💩. Но это оффтоп
hex
пакет никак не связан с JKS же
да хз, уже под все камни смотрю
Dmitriy
Старый самснуг)
Сергій
да хз, уже под все камни смотрю
проверь всех пользователей на телефоне
hex
проверь всех пользователей на телефоне
я ж говорю, на тот с 6.0 ни разу не было установлено
hex
а как именно подписываешь?
в gradle.properties keys.repo=$HOME/Android/signing в build.gradle (app) android { compileSdkVersion 28 buildToolsVersion = '28.0.3' defaultConfig { ... minSdkVersion 22 targetSdkVersion 28 ... } signingConfigs { debug { /* здесь никаких изменений нет */ } release { if (project.hasProperty("keys.repo")) { def projectPropsFile = file(project.property("keys.repo") + "/staxi.properties") if (projectPropsFile.exists()) { Properties props = new Properties() props.load(new FileInputStream(projectPropsFile)) storeFile file(file(project.property("keys.repo") + props['RELEASE_STORE_FILE'])) storePassword props['RELEASE_STORE_PASS'] keyAlias props['RELEASE_ALIAS'] keyPassword props['RELEASE_KEY_PASS'] } } else { println "=======================================================" println "[ERROR] - Please configure release-compilation environment - e.g. in ~/signing directory" println "=======================================================" } } } buildTypes { release { ... signingConfig = signingConfigs.release }
Андрей
на самом деле коммент с установкой через ADB и просмотр логов самый здравый, с этого и начни
Dmitriy
Сделай assemble release, а не собрку через generateSignedApk
Dmitriy
и проверь
Dmitriy
потому что у тебя прописаны конфиги для релиза а ты собираешь иначе
hex
потому что у тебя прописаны конфиги для релиза а ты собираешь иначе
чейто? в генерации выбор есть, там и выбираю release
Андрей
storeFile file(file(project.property("keys.repo") + props['RELEASE_STORE_FILE']))
Андрей
что это за дичь?
Dmitriy
Это да, но какой тогда смысл в этих конфигах если ты руками все указываешь при сборке