Эта статья написана для Android-разработчиков, которые хотят применить свои существующие знания для создания мобильных приложений с помощью Flutter. В этой статье мы рассмотрим эквивалент Activity во Flutter.
Рубрика «android development» - 9
Flutter для Android-разработчиков. Как создавать UI для Activity, используя Flutter
2018-09-27 в 13:43, admin, рубрики: android, android development, dart, design, devcolibri, flutter, material design, дизайн мобильных приложений, никто не читает теги, перевод с английского, Программирование, разработка, разработка мобильных приложений, Разработка под android10 лет Android: вспомнить всё
2018-09-24 в 7:01, admin, рубрики: android, android development, Блог компании JUG.ru Group, разработка мобильных приложений, Разработка под android, смартфоныДесять лет назад, 23 сентября 2008-го, состоялся релиз Android 1.0 и был представлен самый первый андроидфон HTC Dream. Сейчас Android — ОС с самой большой пользовательской базой в мире, а тогда всё это выглядело проектом, который легко может провалиться.
По случаю юбилея мы решили вспомнить, как система менялась на протяжении всего этого времени. Поскольку мы проводим конференцию Mobius, Android интересен нам не только как пользователям, но и с точки зрения разработки приложений. Так что вспомнили и важные для разработчиков моменты, в этом нам помог Владимир dzigoro Иванов — участник программного комитета Mobius, пишущий под Android аж с 2009-го.
Читать полностью »
Храним токены авторизации безопасно
2018-09-19 в 10:25, admin, рубрики: android development, ios development, security, информационная безопасность, Разработка под android, разработка под iOSПривет %username%. Меня, независимо от темы доклада, на конференциях постоянно спрашивают один и тот же вопрос — «как безопасно хранить токены на устройстве пользователя?». Обычно я стараюсь ответить, но время не позволяет полностью раскрыть тему. Этой статьей я хочу полностью закрыть этот вопрос.
Читать полностью »
Прямой эфир: СI-CD в iOS и Android
2018-09-18 в 11:27, admin, рубрики: android development, CD, ci, feature toggle, ios development, mobiledev, UI-тесты, разработка мобильных приложений, Разработка под android, разработка под iOS, Тестирование мобильных приложенийВсем привет! Меня зовут Дима Воронин, я архитектор мобильных приложений в Авито, занимаюсь инфраструктурой тестирования, CI. 27 сентября на нашем ютуб-канале мы проведем прямой эфир и обсудим continuous integration и continuous delivery в iOS и Android. Вещаем прямиком из нашего офиса. Поговорим об основах: зачем нужны CI/CD и как их настраивать, коснемся UI-тестирования и feature toggling, а дальше — глубже и интереснее. Сами не знаем, куда заведет разговор. В дискуссии будут участвовать эксперты из Яндекса, Альфа-Банка и Авито.
Под катом — примерные вопросы, которые планируем обсуждать (и предлагаем вам дополнить этот список), а также пароли и явки для тех, кто захочет присоединиться к трансляции. Добавляйте пост в закладки: после встречи обновим его и выложим видео.
Реализация BottomAppBar. Часть 1: Material компоненты для Android
2018-09-17 в 12:58, admin, рубрики: android, android development, design, devcolibri, material design, дизайн мобильных приложений, никто не читает теги, перевод с английского, Программирование, разработка, разработка мобильных приложений, Разработка под androidBottomAppBar — это один из новых Android Material компонентов, которые были представлены на Google I/O 2018. Это по сути расширение компонента Toolbar. Новый BottomAppBar располагается в нижней части окна приложения в отличие от тулбара, который находится в его верхней части. С помощью этой парадигмы команда Material Design ожидает нового пользовательского опыта (UX). BottomAppBar намного более доступен для пользователя в сравнении с обычным тулбаром. Переместив панель управления и меню в нижнюю часть приложения, BottomAppBar предлагает кардинально новый дизайн для Android приложений.
Глубокое погружение в папку .idea в Android Studio
2018-09-13 в 12:09, admin, рубрики: android, android development, android studio, devcolibri, никто не читает теги, перевод с английского, Программирование, разработка, разработка мобильных приложений, Разработка под androidКак и для многих разработчиков, папка .idea в Android Studio для меня всегда была, как черный ящик: я знал, что она существует, я знал, что её всегда добавляют в .gitignore, но я решил узнать, для чего же там нужны те или иные файлы и папки, чтобы у меня была возможность обрабатывать иногда возникающие git-конфликты, и для того, чтобы точно знать, какой файл можно безопасно добавить в .gitignore, а какой нет.
Разобрал я это на примере проекта, над которым работаю. И решил поделиться результатом того, что выяснил, т.к. не нашел никакой документации по этому вопросу.
Многомодульность в Android с точки зрения архитектуры. От А до Я
2018-09-13 в 6:09, admin, рубрики: android, android development, architecture design, dagger 2, java, mobile development, modules, multimodality, Блог компании «Лаборатория Касперского», разработка мобильных приложений, Разработка под androidВсем привет!
Не так давно мы с вами осознали, что мобильное приложение — это не просто тонкий клиент, а это действительно большое количество самой разной логики, которое нуждается в упорядочивании. Именно поэтому мы прониклись идеями Clean architecture, прочувствовали, что такое DI, научились использовать Dagger 2, и теперь с закрытыми глазами способны разбить любую фичу на слои.
Но мир не стоит на месте, и с решением старых проблем приходят новые. И имя этой новой проблемы — мономодульность. Обычно об этой проблеме узнаешь, когда время сборки улетает в космос. Именно так и начинаются многие доклады про переход на многомодульность (раз, два).
Но почему-то все при этом как-то забывают, что мономодульность сильно бьет не только по времени сборки, но и по вашей архитектуре. Вот ответьте на вопросы. На сколько у вас AppComponent большой? Не встречаете ли вы периодически в коде, что фича А зачем-то дергает репозиторий фичи Б, хотя вроде такого быть не должно, ну или оно должно быть как-то более верхнеуровнево? Вообще у фичи есть какой-то контракт? А как вы организовываете общение между фичами? Есть какие-то правила?
Вы чувствуете, что мы решили проблему со слоями, то есть вертикально все вроде хорошо, но вот горизонтально что-то идет не так? И просто разбиением на пакеты и контролем на ревью не решить проблему.
В своей статье я хочу вам рассказать, как дошел до многомодульности именно с архитектурной точки зрения. Какие проблемы меня беспокоили, и как я их старался поэтапно решать.
Читать полностью »
Лучший SQL Builder – используем jOOQ на Android
2018-09-13 в 3:18, admin, рубрики: android development, jooq, kotlin, sqlite, Разработка под androidЛучший SQL Builder. Используем jOOQ на Android
Введение
При разработке Android-приложений вполне естественным считается использовать SQLite базу данных в качестве основного хранилища. Обычно, базы данных на мобильных устройствах имеют весьма простенькие схемы и состоят из 10-15 таблиц. Для подобных случаев подходит почти любой SQL Builder, ORM, и даже голый SQLite API.
Но, увы, не всем разработчикам везет, и порой на нашу долю выпадает описывать большие модели данных, использовать хранимые процедуры, настраивать работу с кастомными типами данных или писать 10 INNER JOIN в запросе за очень толстой сущностью. Так не повезло и вашему покорному слуге, из чего и появился материал для данной статьи. Что же, суровые времена требуют суровых мер. Итак, накатываем jOOQ на Android.
Стандартный Error Handler в RxJava2 или почему RxJava вызывает сбой приложения даже если реализован onError
2018-09-07 в 11:40, admin, рубрики: android development, java, rxjava2, Разработка под androidВ переводе статьи пойдёт речь об UndeliverableException
в RxJava2
версии 2.0.6
и новее. Если кто-то столкнулся и не может разобраться, или совсем не слышал об этой проблеме — прошу под кат. Побудили к переводу проблемы в production
после перехода с RxJava1
на RxJava2
. Оригинал был написан 28 декабря 2017, но лучше узнать поздно, чем никогда.

Патчим AndroidX
2018-09-05 в 10:03, admin, рубрики: android development, androidx, aosp, support library, Блог компании Tinkoff.ru, Разработка под androidНа Google I/O 2018 была представлена замена существующим support-библиотекам — AndroidX
Изначально, support-библиотеки разрабатывались для обратной совместимости новых API-интерфейсов и были тесно связаны с операционной системой. Разработка support-библиотек велась во внутренних ветках, которые периодически вливались в Android Open Source Project (AOSP). Такой подход ограничивал мерж пулл-реквестов от сообщества небольшими отрезками времени когда код AOSP и внутренний код гугла были синхронизированы. Кроме того, для работы с support библиотеками необходимо было выкачивать весь код платформы, а это более 40ГБ исходного кода. Для моего диска объемом 250 ГБ это достаточно много.