Size: a a a

DroDev | Всё об Android разработке

2019 December 24
DroDev | Всё об Android разработке
Недавно заходила речь про интересный баг из-за того, что не успели подтянуть строки переводов для определенного языка.

Так вот, проблема решена 🚀

А именно, используя сервис POEditor (https://poeditor.com/) можно там держать все строки как single source of truth, а выгружать их прямо на CI перед сборкой 💃

Теперь абсолютно всегда из общего "репозитория строк" подтягиваются правильные переводы для всех строк.

А сделано это с помощью таск в build.gralde, полный код которого в статье. http://bit.ly/2s7v0GE
источник
2019 December 25
DroDev | Всё об Android разработке
источник
DroDev | Всё об Android разработке
A/B тестирование - единственный путь делать ваше #приложение, сервис, да что угодно лучше. Правда размер выборки для этого должен быть соответствующий.

Интересный кейс от #DuoLingo (это приложение для изучения языков). Одно из упражнений - нужно расставить слова в правильном порядке на изучаемом языке, чтобы смысл был тот же, что написан на уже известном вам. Например написано "Я люблю есть печеньки" и английские слова. to cookies I eat like.

Кажется, что, заглавная буква в первом слове - баг. Но #A/B тест показал, что если убрать заглавную букву, то D1 #retention (метрика, показывающая, сколько человек вернулись в приложение на следующий день) проседает на 0.5%. Кажется не большая цифра, но на объеме в 20+ млн. пользователей это сотни тысяч человек.

К сожалению, невозможно сделать так, чтобы каждая внедряемая фича обязательно улучшала ваш продукт. Все изменения необходимо измерять и отслеживать. Конечно, для сколько-нибудь правдивой оценке необходимы большие данные, но уметь это делать желательно уже сейчас. http://bit.ly/2Qg4geU
источник
2019 December 27
DroDev | Всё об Android разработке
Программирование состоит из нескольких основных аспектов:

👉 Знания языка на котором пишете. У нас это #Kotlin, #Java. За этим стоит читать наш уютный канал или пойти на бесплатный #Codelabs или платный #Skillbox.

👉 Знания платформы, под которую пишиет. У нас это #Android. За этим опять же - наш канал и официальная документация Android.

👉 Алгоритмы. Любая последовательность действий - это по умолчанию #Алгоритм. Развивать соответствующее мышление помогает решение задачек. За разбором можно идти @UniLecs.

Новогодние праздники - отличный повод позаниматься, с Наступающим 🎄
источник
2019 December 31
DroDev | Всё об Android разработке
С Наступающим, коллеги и все кто читает этот пост 🎉

Пусть следующий год сложится максимально продуктивно 🚀 Те, кто планирует только учиться разработке - создадут свой первый проект. Если вы уже зарекомендовавший себя #Android разработчик, время поставить перед собой новые цели и устремится в их сторону.

За прошедший год я и сам многому научился, был в том числе создан этот проект, в рамках которого делюсь полезностями из мира Андроид разработки. Понемногу, но все таки прилетает позитивный фидбек, значит это все не зря, хотя, вероятно, не все идеально и не без косяков. В следующем году также буду делиться с вами интересной информацией. Stay tuned!

На радарах моих профессиональных интересов есть две основные вещи:
- Программирование под Android
- Удаленная работа

В этом году я даже совмещал контент в рамках данного канала. Для меня это одно и тоже (т.е. удаленная работа андроид прогером), но я подозреваю, что многим здесь фиолетово на удаленную работу, а тех, кого она интересует совсем не обязательно привлекает android, да и вообще мобильные приложения.

В связи с этим появилось ответвление - независимый контентный проект "ПрограммWEST", в котором буду делиться именно аспектами удаленной работы, а в данном уютном чатике будет только Android. Это не значит, что Android контента станет меньше 😉

Т.ч. если, помимо разработки под Android, вас интересует тема удаленной работы (а там, уверяю, есть о чем поговорить), то welcome. Как обычно, все сделано для вас, дорогие читатели, и контент можно получать в удобной вам соц. сеточке:

👉 Telegram: https://t.me/programmWest
👉 Вконтакте: https://vk.com/programmwest
👉 Facebook: https://www.facebook.com/programmWest/
👉 Instagram: https://www.instagram.com/programmwest/

PS. С Наступающим Новым Годом!
источник
2020 January 03
DroDev | Всё об Android разработке
#CodeReview - идеальный способ обучения и обмена знаниями. Вы не просто абстрактно рассуждаете на отвлеченную тематику, а решаете конкретную задачу вместе с другим человеком. Вы обмениваетесь знаниями, подходами и идеями.

Хотите, чтобы ваш код посмотрели разные люди? Учавствуйте в #openSource проектах. Допиливая нужную вам библиотеку вы делаете хорошо:

- себе, потому что получаете нужный функицонал
- еще раз себе, потому что ваш код будет на ревью у других разработчиков
- комьюнити, потому что вы сделали вклад в общее дело

Хотите, чтобы ваш код поревьюил я? Генерите реквесты в примеры, создаваемые для вас 😉

Не знаете как создать Pull Request? Тогда пишите в обсуждения! https://github.com/dryaz/dimlix.com-samples
источник
2020 January 14
DroDev | Всё об Android разработке
Хорошие новости для любителей пилить свои игрушки.

В 2020 #google проводит indie game festival. До 2 марта инди разработчикам (в том числе из России) можно подавать заявки на участие.

Это отличный повод зарелизить свою игру (если еще нет) и поучавствовать в гонке за солидными призами:

- Оплаченная поездка в Варшаву для презентации игры в финале
- Помощь в продвижении с SuperScale ценой в ~100.000 Евро
- Приглашение в Акселератом Google Play Games
- Консультации с командой Google play
- Фичеринг в Google play store
- ПР на рекламных площадках Google
Tickets to top industry events
- Билеты на отраслевые мероприятия
- Последние устройства от Google
- и другие призы

Удачи всем учавствующим! http://bit.ly/2RkpHfg
источник
2020 January 18
DroDev | Всё об Android разработке
GDPR (General Data Protection Rules) - объективно то, чему стоит уделить внимание, если вы хотите публиковать свои приложения (и вообще любые сервисы) в Европе.

Эти правила содержат положения о том как должны хранится персональные данные, что вообще они из себя представляют и какие обязанности относительно них у вас есть.

К примеру, вы должны собирать минимально возможные личные данные, которые нужны для работы приложения. Также, человек в любой момент может вас попросить удалить или передать ему или другой компании свои персональные данные. И вы не можете этого НЕ сделать.

Если вы хотите отправлять push уведомления, которые не относятся напрямую к приложению (материалы, которые могут быть расценены как рекламные), то нужно получить явное разрешение это делать. Откосить тем, что "Android не требует разрешения для отправки пушей" вряд ли получится.

Познавательная статья о том какие штрафы уже выписывали:
https://www.bbc.com/news/business-48905907

Есть и "мобильные" кейсы: https://platform.dataguidance.com/opinion/spain-aepd-fines-laliga-%E2%82%AC250000-gdpr-violations - компании выписали штраф за то, что они собирали обезличенные данные для выявления нелегальных трансляций. НО, так как не было получено явное разрешение и эти данные не относятся на прямую к приложению - извольте выложить 250'000 Eur.
источник
2020 January 20
DroDev | Всё об Android разработке
#Android, в плане архитектуры, со временем менялся. Тут и #MVP с #Moxy, и свои реализации #MVC и т.д.

С #Android #Jetpack и #Kotlin постепенно вырисовывается путь, который Google считает верным при построении приложения. А именно мультимодульные MVVM проекты.

#ViewModel отвечает за логику и жизненный цикл бизнес сущностей. UI как обычно может быть пересоздан, а через liveData все вернется как было.

На глаза попалась интересная статья с примерами от А до Тестов: https://proandroiddev.com/android-architecture-d7405db1361c

Но не забываем, что многомодульность сделана не для того, чтобы усложнить жизнь разработчику. Она может быть полезна например для dynamic features: https://developer.android.com/guide/app-bundle/dynamic-delivery
источник
2020 January 21
DroDev | Всё об Android разработке
Не совсем про Android, но все же про разработку и не мог пройти мимо 😃

Toptal​ проводит JS Speed Coding Challenge.

На все про все ровно 3 минуты, количество попыток не ограничено и, кроме азарта, еще и призы подвезли.

1st Place: Apple Airpods
1st Place - 5th Place: $100 Amazon gift card
1st Place - 20th Place: Toptal t-shirt https://speedcoding.toptal.com/start/Qvt8hxP
источник
2020 January 22
DroDev | Всё об Android разработке
Всякие разные DIY #Android примеры показывают хороший результат по отклику от сообщества.

И сегодня это... #Jetpack #Composer - свеженький декларативный #UI.

Наткнулся на интересный репозиторий. В нем собраны примеры и ссылки на туториалы по composer. https://github.com/Foso/Jetpack-Compose-Playground
источник
2020 January 23
DroDev | Всё об Android разработке
Вы знаете, что теги, вида #Android - кликабельны?
По нажатию на него можно отфильтровать весь контент группы.
источник
DroDev | Всё об Android разработке
Пользуетесь ли вы #тегами в постах для навигации
Анонимный опрос
44%
Да, нужно больше тегов!
19%
Редко и их должно быть не больше 3 на пост.
34%
Нет, но они не мешают.
4%
Нет, они мешают, хватит это терпеть!
Проголосовало: 110
источник
2020 January 24
DroDev | Всё об Android разработке
#GeekBrains проводит онлайн марафон из серии вебинаров на тему эффективного развития и достижения карьерных целей 🚀

Я целиком и полностью согласен с тем, что не так важно что именно ты учишь, как-то как к этому подходишь!

Вебинары обещают ответить на такие неоднозначные вопросы, как «Как начать разрабатывать на зарабатывать на разработке и IT», послушаем 🎙

📌 А еще они проводят конкурс на бесплатное обучение на факультете. https://fas.st/a2VrGW
источник
2020 January 27
DroDev | Всё об Android разработке
Работа программистом - это не только постоянное сидение за компом в наушниках, оторванными от внешнего мира 😜

Это и рабочая обстановка, коллеги, инструменты работы в команде и т.д. и т.п.

Если вы хотите посмотреть, как это все устроено в московском офисе Яндексе, то для вас хорошие новости! Он открыл свои двери для технических специалистов, которые хотят посмотреть как все работает изнутри. А посмотреть там есть на что 👍 http://bit.ly/2TXkPzE
источник
2020 February 11
DroDev | Всё об Android разработке
#Анимации в #Android всегда уступали #iOS. Последнее время #Google делает все больший упор на плавность и красоту #UI и качественный #UX.

#MotionLayout - как раз один тому пример. Я тут наткнулся на две статьи о том, как можно сделать красивые и сложные анимации в приложении. Один и тот же UI сделали с использованием MotionLayout и без. Все приправлено примерами и исходниками на #Github.

Анимации БЕЗ MotionLayout:
https://proandroiddev.com/complex-ui-animation-on-android-8f7a46f4aec4

Анимации С MotionLayout:
https://proandroiddev.com/complex-ui-animations-on-android-featuring-motionlayout-aa82d83b8660
источник
2020 February 19
DroDev | Всё об Android разработке
Если кто еще не видел, то вот...
Анонс Mobius 2020 в Питере 🚀

Из того, что увидел потенциально интересного

👉 DevOps для мобильных приложений. Автоматизация это всегда хорошо
👉 О декларативном UI и разработке Jetpack Compose
👉 То, что потенциально интересно начинающим разработчикам - про карьеру в мобайле

В общем много разных интересных тем, должно быть полезно. http://bit.ly/2vLAXKC
источник
2020 February 21
DroDev | Всё об Android разработке
Питерский Mobius пройдет 23-24 июня 2020, а билеты на него можно купить уже сейчас 😉

По промо коду

dimlix2020pc

можно купить билет из тарифа Personal по цене прошлого месяца (т.к. каждый месяц - дороже). На сегодня это 15'500 вместо 17'000, скидка 1'500руб.

Программы конференции на сайте еще нет, но Mobius по опыту серьезно подходит к мероприятию 👍
источник
2020 February 24
DroDev | Всё об Android разработке
#Android 11 preview уже доступна для Pixelей.

Что стоит ждать от android 11:

👉 One-time permission
Для ряда разрешений (камера, микрофон, местоположение) пользователь получит возможность выбрать опцию "Можно, но только в этот раз". Для меня, как для пользователя - это круто. Как для разработчика - ну так себе 😜

👉 Автоматически "Больше не спрашивать" про разрешения
Если пользователь 2 раза отказался от определенной запроса на разрешения доступа, то система посчитает что юзер выбрал "и больше не спрашивать.

👉 Нельзя всегда следить за пользователем
Получить постоянное разрешение на доступ к местоположению пользователя не получится, даже если очень хочется и target API на Android 10.

Конечно этот не весь список изменений, но то, что точно стоит учитывать в ваших приложениях уже сейчас. А с полными изменениями можно ознакомиться на офф. сайте.

В целом тренд на безопасность пользовательских личных данных и #ML продолжается, что наверное и хорошо! http://bit.ly/39Xzaku
источник
2020 February 25
DroDev | Всё об Android разработке
Сейчас на проекте делаем #Android приложение, (большую) часть которого можно встраивать как #SDK внутрь других приложений. Причем довольно тесно. То есть не просто открыть стороннюю камеру и вернуть результат в виде ссылки на картинку в системе.

В связи с этим есть ряд интересных задач о связке внешнего приложения и SDK. Как то:

👉 Если внешнее приложение имеет #LockScreen по таймауту, а время, проведенное в SDK может оказаться значительным - как сделать seemles experience и white label, чтобы случайно, при возврате, юзер не столкнулся с LockScreen.

👉 Существуют сценарии, когда в рамках одного flow необходимо несколько раз "переключаться" между SDK и внешним приложеним, причем поддерживая "общий стек" экранов. Т.е. обратный путь должен тоже чередовать внешнее приложение и SDK.

👉 Простота интеграции. Естественно, ваш SDK мало кто захочет интегрировать, если внедрение будет вызывать боль и страдания.

👉 Мы сами же интегрируем свое SDK. Так сказать "родное" внешнее приложение. И вот тут надо из SDK логировать во внешние системы всякую аналитику, события и тд.

И это еще не все...
Итак, я, на мой взгляд, нашел решения этим задачкам.

Если вам интересно как такое можно провернуть - ставим лайк.
А если и сами знаете ответ - то welcome в комменты для обсуждения!
источник