Смотрел тут давеча, кто как навигацию у себя реализует, и наткнулся на относительно старую статью Кости Цховребова про его библиотечку Cicerone. Если кто-то тоже изучает вопрос, можно почитать.
Я, кстати, курирую доклад Кости на AppsConf’19. Основная идея доклада - показать, как так реализовать retry диалог для любых запросов/задач, чтобы его можно было быстро встроить в существующий код. Если будет возможность, крайне советую посетить :)
#library #navigation #appsconf
Я, кстати, курирую доклад Кости на AppsConf’19. Основная идея доклада - показать, как так реализовать retry диалог для любых запросов/задач, чтобы его можно было быстро встроить в существующий код. Если будет возможность, крайне советую посетить :)
#library #navigation #appsconf
Хабр
Cicerone — простая навигация в Андроид приложении
На этой схеме не скелет древнего обитателя водных глубин и не схема метро какого-то мегаполиса, это карта переходов по экранам вполне реального Андроид приложения! Но, несмотря на сложность, нам...
Коротенькая статья с обзором Roles в Android Q. Теперь приложение сможет попросить юзера назначить его браузером/галереей/звонилкой/… по умолчанию.
#androidq #roles
#androidq #roles
Medium
Android Q Roles
Alongside the Android Q Beta 1 release, we got a new interesting feature: Roles. Though this feature is still in early stage of…
@Harmonizr написал статью о своём видении текущего состояния нашей с вами области. Советую почитать.
#android #library #framework
#android #library #framework
javanese.online
Hype-driven Android-development, или как инженерная специальность превращается в маркетинг — Javanese
Мы заигрались, вместо того чтобы решать реальные проблемы. Индустрии хана.
В чатик нашего пирлаба @AlexFails прислал интересную ссылку. Подозреваю, что это баян, но я такой не видел. Выглядит как отличный must-read для всех новичков.
#guide #humor
#guide #humor
Tproger
Как правильно задавать вопросы, или Проблема XY
«Проблема XY» или «Проблема Молотка» — проблема тех, кто не умеет задавать правильные вопросы. Вместо того, чтобы спросить о самой проблеме, они спрашивают, как завершить одну из начатых попыток её решения (обычно неудачных) . Знакомо? Тогда читайте статью…
Android Q Beta 2. Из наиболее интересного - поддержка Bubbles (как у Facebook Messenger) и Foldables emulator.
#androidq #bubbles #foldable
#androidq #bubbles #foldable
Android Developers Blog
Android Q Beta 2 update
Today we're releasing Android Q Beta 2 and an updated SDK for developers. It includes the latest bug fixes, optimizations, and API updates for Android Q, along with the April 2019 security patches. You'll also notice isolated storage becoming more prominent…
Рома Елизаров показывает, какие есть проблемы с
Кстати, на AppsConf у Вани @mistreckless будет доклад про то, как правильно этими самыми
#kotlin #flow #coroutine
Future, с suspend fun и с Channel и аккуратненько подводит к новому клубочку - Flow. Доступно это дело в kotlinx.coroutines, начиная с 1.2.0-alpha-2.Кстати, на AppsConf у Вани @mistreckless будет доклад про то, как правильно этими самыми
Channel пользоваться.#kotlin #flow #coroutine
Medium
Cold flows, hot channels
Kotlin coroutines were missing a primitive to represent cold asynchronous streams of data. Not anymore. Welcome Kotlin Flows.
Подъехали изменения по instant apps в Android Gradle Plugin 3.4.0. Ссылку прислал @saturov
#gradle #module #instantapps
#gradle #module #instantapps
Android Developers Blog
A simpler experience for instant apps
Posted by Miguel Montemayor and Diana García Ríos As of Android Gradle plugin 3.4.0 (included in Android Studio 3.4), we are starting...
Минутка вакансий.
Мы ищем разработчика в Android-команду App in the Air.
Нам по пути с человеком, который хочет:
- Работать на результат, а не на внедрение очередной модной технологии
- Научиться выращивать свои решения для потребностей проекта, а не лепить “как принято в индустрии”
- Напрямую поучаствовать в превращении маленькой команды в большую
- Влиять на продукт, который делает
- Быть завтра лучше, чем вчера
- Работать в известной команде (гуглим App in the Air, Байрам Аннаков, Сергей Пронин, Тимур Ахметгареев, Алексей Милеев etc.)
И не хочет:
- Равнодушия к результатам своей деятельности
- Двигать вьюшки без обратной связи
- Пинать болт в ожидании новых задач
- Заниматься бюрократией
- Слышать фразы типа: “Ты что, умнее Джейка Вортона?"
По задачам стандартно:
- Написание новых фич
- Улучшение старых
- Задачи, связанные с инфраструктурой для экспериментов с UI/UX
- Адаптация под различные рынки приложений
Из интересного иногда удается поработать на такие вот результаты: https://youtu.be/ISjiJQGJ72o?t=426
Из плюшек:
- Уютный офис в центре у Маяковской. И ещё один в Сиэттле
- Поездки на всякие Google I/O, зарубежные хакатоны
- Выезды 1-2 раза в год на корпоративы (с Сиэттловскими коллегами). В декабре были в Грузии, летом - скорее всего в Гонконг
- Возможность получить не только опыт Android-разработки, но ещё и всяких вебов-бэкэндов-дизайнов
- Возможность поработать над отраслевым продуктом (гражданская авиация) в международных масштабах
- Помощь с публикацией статей, выступлениями и докладами на конференциях
- Ламповую атмосферу в команде
- …и прочие печеньки
По опыту - мы готовы рассмотреть разный уровень. Есть минимальный порог - от года продакшн-разработки. Но если срок меньше, а желание попасть к нам неугасимо - пишите.
По З/П, уверен, договоримся.
Мы ищем разработчика в Android-команду App in the Air.
Нам по пути с человеком, который хочет:
- Работать на результат, а не на внедрение очередной модной технологии
- Научиться выращивать свои решения для потребностей проекта, а не лепить “как принято в индустрии”
- Напрямую поучаствовать в превращении маленькой команды в большую
- Влиять на продукт, который делает
- Быть завтра лучше, чем вчера
- Работать в известной команде (гуглим App in the Air, Байрам Аннаков, Сергей Пронин, Тимур Ахметгареев, Алексей Милеев etc.)
И не хочет:
- Равнодушия к результатам своей деятельности
- Двигать вьюшки без обратной связи
- Пинать болт в ожидании новых задач
- Заниматься бюрократией
- Слышать фразы типа: “Ты что, умнее Джейка Вортона?"
По задачам стандартно:
- Написание новых фич
- Улучшение старых
- Задачи, связанные с инфраструктурой для экспериментов с UI/UX
- Адаптация под различные рынки приложений
Из интересного иногда удается поработать на такие вот результаты: https://youtu.be/ISjiJQGJ72o?t=426
Из плюшек:
- Уютный офис в центре у Маяковской. И ещё один в Сиэттле
- Поездки на всякие Google I/O, зарубежные хакатоны
- Выезды 1-2 раза в год на корпоративы (с Сиэттловскими коллегами). В декабре были в Грузии, летом - скорее всего в Гонконг
- Возможность получить не только опыт Android-разработки, но ещё и всяких вебов-бэкэндов-дизайнов
- Возможность поработать над отраслевым продуктом (гражданская авиация) в международных масштабах
- Помощь с публикацией статей, выступлениями и докладами на конференциях
- Ламповую атмосферу в команде
- …и прочие печеньки
По опыту - мы готовы рассмотреть разный уровень. Есть минимальный порог - от года продакшн-разработки. Но если срок меньше, а желание попасть к нам неугасимо - пишите.
По З/П, уверен, договоримся.
Forwarded from ASmirnov
Сказ как желание оторваться от клавиатурки и немного поработать над своей тушкой приводит к нажинаманию кнопочек :]
Немного лольного опыта страданий от плохо пахнущего софта. Активно ставил софтик на прошлой неделе из Play Market, ну там прошёл по топам и посмотрел что нового в них и что вообще индустрия использует. А вчера вечером получил перекрытие стандартного экрана разблокировки и попытки постоянно мне втюхать рекламу.
Весело подумал я и полез за adb.
Если кратко то вычисляется очень просто, по сути в данном перекрытии может быть либо activity(что палевно и его попытаются не юзать), либо window – что прикольней.
Благодаря команде мы узнаем какая аппка рисует текущее видимое окно:
Дальше открываем в google play найденное пакетное имя и сносим приложение предварительно оставив негативный отзыв :]
Если вам интересно оставить негативный отзыв или изучить механизм работы приложения – https://play.google.com/store/apps/details?id=workout.fitness.training.abs.loseweight
В итоге никогда бы не подумал на это приложение без проделанных манипуляций, страшно представить что бы делал обычный пользователь 😢
Немного лольного опыта страданий от плохо пахнущего софта. Активно ставил софтик на прошлой неделе из Play Market, ну там прошёл по топам и посмотрел что нового в них и что вообще индустрия использует. А вчера вечером получил перекрытие стандартного экрана разблокировки и попытки постоянно мне втюхать рекламу.
Весело подумал я и полез за adb.
Если кратко то вычисляется очень просто, по сути в данном перекрытии может быть либо activity(что палевно и его попытаются не юзать), либо window – что прикольней.
Благодаря команде мы узнаем какая аппка рисует текущее видимое окно:
adb shell dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp'Дальше открываем в google play найденное пакетное имя и сносим приложение предварительно оставив негативный отзыв :]
Если вам интересно оставить негативный отзыв или изучить механизм работы приложения – https://play.google.com/store/apps/details?id=workout.fitness.training.abs.loseweight
В итоге никогда бы не подумал на это приложение без проделанных манипуляций, страшно представить что бы делал обычный пользователь 😢
@istima прислал ссылку на увлекательнейшую историю о том, как в ObjectBox пытаются разобраться с
#bug #ndk #crash
java.lang.UnsatisfiedLinkError на инициализации.#bug #ndk #crash
GitHub
Crash on ObjectBox initialization. java.lang.UnsatisfiedLinkError · Issue #605 · objectbox/objectbox-java
Issue Basics App crashes when we initialize ObjectBox ObjectBox version (are using the latest version?): 2.1.0 Reproducibility: occurs on some user devices, we could not reproduce it Reproducing th...
Немножко нытья и цифр на тему медленного обновления Android. Занимательно, что с каждой новой версией системы, на неё обновляются всё меньше и меньше устройств.
#android #google #manufacturer
#android #google #manufacturer
unlike kinds
Android updates are getting slower and slower, despite Google's best efforts
For a decade, Google has tried to speed up updates to Android phones. For a decade, they’ve failed. Even worse, updates are getting slower every year.
И в ту же яму: ребята заметили, что уже полгода Google не обновляли статистику распределения версий.
#android #google
#android #google
xda-developers
[Update: Finally Back Up] Google hasn’t published updated Android distribution statistics for the last 6 months
The Android distribution charts tells us what percentage of Android devices are running each Android OS, but Google hasn't updated it in months.
Очередная статья про
#kotlin #flow #coroutine
Flow от Ромы Елизарова. Немножко показывается, как это дело устроено внутри, и рассказывается, как они борются с backpressure при помощи suspending functions.#kotlin #flow #coroutine
Medium
Simple design of Kotlin Flow
Peek under the hood of Kotin Flow design— a combination of language features and a library that enables a powerful abstraction.
Слушайте, а есть тут те, кто поехал на Google I/O?
Если захочется встретиться пообщаться - пишите в личку @alexey_mileev
#google #io #event
Если захочется встретиться пообщаться - пишите в личку @alexey_mileev
#google #io #event
Ребята из Uber рассказывают, чем плох TCP, и зачем они перебирались на UDP + QUIC.
#uber #network #protocol
#uber #network #protocol
На последнем Shitty Android PeerLab @quasis рассказал о том, как он реализовывал back с экрана по свайпу вправо (как это сделано в нашем любимом Telegram). В тот момент решение мне немного взорвало мозг, потому что по сути
#fragment #viewpager #peerlab
ViewPager используется как корневой контейнер для всех фрагментов. В подходе есть ещё, над чем поработать, но сама идея крутая и оригинальная. Я такого ещё не видел. Собственно, автор описал всё это на хабре, сходите почитайте.#fragment #viewpager #peerlab
Хабр
Превращаем ViewPager в менеджер фрагментов с анимацией в стиле iOS
Многие разработчики под Андроид сталкивались с проблемой реализации анимаций и переходов при открытии новых фрагментов. Нам предлагается использовать либо добавление фрагментов в контейнер, наслаивая...
Где уже только не выкладывали эту ссылку, но у меня вот руки только дошли.
Автор разобрал новую библиотеку в семействе Jetpack: security-crypto. Библиотека в текущем виде умеет шифровать
А ещё здорово показан код: два коротких сниппета, которые сразу показывают, что там куда втыкать.
#jetpack #library #cybersec
Автор разобрал новую библиотеку в семействе Jetpack: security-crypto. Библиотека в текущем виде умеет шифровать
SharedPreferences и файлы, а написана поверх гуглового же Tink. А ещё здорово показан код: два коротких сниппета, которые сразу показывают, что там куда втыкать.
#jetpack #library #cybersec
Хабр
Безопасность со вкусом Google
Отгремел Google I/O 2019 и пришла пора переписывать проекты на новую архитектуру изучать новинки. Так как я интересуюсь безопасностью мобильных приложений, то...