Привет %username%. Меня, независимо от темы доклада, на конференциях постоянно спрашивают один и тот же вопрос — «как безопасно хранить токены на устройстве пользователя?». Обычно я стараюсь ответить, но время не позволяет полностью раскрыть тему. Этой статьей я хочу полностью закрыть этот вопрос.
Читать полностью »
Рубрика «android development» - 10
Храним токены авторизации безопасно
2018-09-19 в 10:25, admin, рубрики: android development, ios development, security, информационная безопасность, Разработка под android, разработка под iOSПрямой эфир: С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, дизайн мобильных приложений, никто не читает теги, перевод с английского, Программирование, разработка, разработка мобильных приложений, Разработка под android
BottomAppBar — это один из новых 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 ГБ это достаточно много.
Как я создала прибыльное Android приложение по распознаванию текста
2018-09-03 в 18:04, admin, рубрики: android, android application development, android development, android market, Разработка под androidВсем привет. В прошлой статье я рассказывала, как заработать свои первые 100$ в Google Play Market. В этой статье я больше расскажу о разработке и управлении проектом.
Предмет статьи — Android приложение по распознаванию текста, которое в маркете 4 месяца и имеет почти 10 000 инсталлов, монетизируется посредством платных подписок, покупок в приложении и рекламы.
Приложение умеет распознавать текст (Google Vision OCR API), переводить распознанное (Bing Translate API), формировать Searchable PDF, хранить историю в Cloud.
Читать полностью »
Использование отладчика Android Studio по максимуму
2018-08-10 в 14:18, admin, рубрики: android, android development, android studio, debug, devcolibri, никто не читает теги, отладка, перевод с английского, Программирование, разработка, разработка мобильных приложений, Разработка под android
Это хитрость, о которой я узнал совсем недавно у Senior Android разработчика в моей компании, и теперь я чувствую себя несчастным, сожалея о времени, которое я провел в ожидании сборки Gradle, чтобы проверить свои изменения при написании Android приложений.

