Бесплатный курс по Advanced #Kotlin от #Google и #Udacity 👨🎓
Видео презентация: https://www.youtube.com/watch?v=rGv5pInpSvc
2-х месячная программа рассчитана на людей уже знакомых с Котлином и желающих углубиться в дебри разработки.
Все мы по разному потребляем контент, по-этому гугл и юдасити позаботились о том, чтобы уроки были доступны как видео курс на Udacity, так и серия на #Codelabs.
Перейти к Udacity курсу »
Перейти на Codelabs »
Видео презентация: https://www.youtube.com/watch?v=rGv5pInpSvc
2-х месячная программа рассчитана на людей уже знакомых с Котлином и желающих углубиться в дебри разработки.
Все мы по разному потребляем контент, по-этому гугл и юдасити позаботились о том, чтобы уроки были доступны как видео курс на Udacity, так и серия на #Codelabs.
Перейти к Udacity курсу »
Перейти на Codelabs »
YouTube
Learn Advanced Android Development in Kotlin
Advanced Android development in Kotlin, developed by Google together with Udacity, is a free, self-paced online course that teaches advanced skills for building Android apps using the Kotlin programming language.
Take the course → https://goo.gle/2CzDVCk…
Take the course → https://goo.gle/2CzDVCk…
Начиная с #Android 11 не будет вопроса чем плох #AsyncTask и когда его использовать. Никогда. Теперь он #Deprecated.
На его место есть несколько кандидатов от самого #Google:
- java.util.concurrent
- #Kotlin concurrency (#coroutines)
Я бы добавил, что если уже у вас проекте есть #RX - можно использовать его помощь. Если он не подключен - kotlin coroutines - то что нужно.
На его место есть несколько кандидатов от самого #Google:
- java.util.concurrent
- #Kotlin concurrency (#coroutines)
Я бы добавил, что если уже у вас проекте есть #RX - можно использовать его помощь. Если он не подключен - kotlin coroutines - то что нужно.
Интересный факт: около 60% Top 1'000 приложений в Google play используют #Kotlin внутри.
#Google продолжает активно развивать поддержу Котлина для #Android. В #CodeLab уже много обучающего материала:
- https://codelabs.developers.google.com/android-kotlin-fundamentals/
- https://codelabs.developers.google.com/advanced-android-kotlin-training/
- https://codelabs.developers.google.com/kotlin-bootcamp/
Фокус на 2020: работа над компилятором, чтобы сделать сборку Котлин проектов быстрее, удобнее и просто лучше! https://android-developers.googleblog.com/2019/12/androids-commitment-to-kotlin.html
#Google продолжает активно развивать поддержу Котлина для #Android. В #CodeLab уже много обучающего материала:
- https://codelabs.developers.google.com/android-kotlin-fundamentals/
- https://codelabs.developers.google.com/advanced-android-kotlin-training/
- https://codelabs.developers.google.com/kotlin-bootcamp/
Фокус на 2020: работа над компилятором, чтобы сделать сборку Котлин проектов быстрее, удобнее и просто лучше! https://android-developers.googleblog.com/2019/12/androids-commitment-to-kotlin.html
Android Developers
Android Basics with Compose course | Android Developers
The official site for Android developers. Provides the Android SDK and documentation for app developers and designers.
👍1
Хорошие новости для любителей пилить свои игрушки.
В 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 #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
Android Developers Blog
#Анимации в #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
#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
Medium
Complex UI/Animation on Android
How to write complex multi-step animations on Android.
#Google вплотную взялся за задачу «сделать жизнь #Android разработчиков проще».
Пару недель назад выкатили видео, в котором рассказали что нового и реально интересного есть в #Jetpack - наборе инструментов для андроид разработчика.
Из самого для меня интересного:
👉 #Hilt. Рекомендованная библиотека для Dependency Injection. Она построена на #Dagger, но реализует то, что обычно приходилось делать костылями. Теперь есть простой и понятный способ инжекстится в Android Framework и Jetpack library классы.
👉 Paging 3. Переписанная Paging 2 на корутинах. Вообще, попробовав раз корутины и поняв их идеологию, возвращаться к RX для простой многопоточность уже не захочется.
👉 Navigation с Dynamic feature. Сам навигационный компонент всё никак не доходят руки нормально попробовать, но выглядит интересно. Теоретически можно строить навигацию, предполагая что все экраны в наличии, а по факту динамически подгружать фичи по мере использования. Модулярность в действии.
👉 Упрощение Request #Permission. Наконец. Теперь в понятном виде, легко и непринужденно можно запрашивать Runtime Permissions. Раньше использовал RxPermissions, которые делали жизнь проще, но сейчас вообще шик.
👉 Autofill IME. Клавиатура вообще всегда была больным местом. Кстати, в андроиде, начиная с 11 с помощью WindowInsets появилась возможность (наконец!) синхронизировать контент приложения с клавиатурой. А тут еще подвезли интересный API, который позволяет отображать inline suggest в подсказках к клавиатуре.
В общем, кажется жизнь андроид разработчика налаживается 😉 https://bit.ly/3drdezJ
Пару недель назад выкатили видео, в котором рассказали что нового и реально интересного есть в #Jetpack - наборе инструментов для андроид разработчика.
Из самого для меня интересного:
👉 #Hilt. Рекомендованная библиотека для Dependency Injection. Она построена на #Dagger, но реализует то, что обычно приходилось делать костылями. Теперь есть простой и понятный способ инжекстится в Android Framework и Jetpack library классы.
👉 Paging 3. Переписанная Paging 2 на корутинах. Вообще, попробовав раз корутины и поняв их идеологию, возвращаться к RX для простой многопоточность уже не захочется.
👉 Navigation с Dynamic feature. Сам навигационный компонент всё никак не доходят руки нормально попробовать, но выглядит интересно. Теоретически можно строить навигацию, предполагая что все экраны в наличии, а по факту динамически подгружать фичи по мере использования. Модулярность в действии.
👉 Упрощение Request #Permission. Наконец. Теперь в понятном виде, легко и непринужденно можно запрашивать Runtime Permissions. Раньше использовал RxPermissions, которые делали жизнь проще, но сейчас вообще шик.
👉 Autofill IME. Клавиатура вообще всегда была больным местом. Кстати, в андроиде, начиная с 11 с помощью WindowInsets появилась возможность (наконец!) синхронизировать контент приложения с клавиатурой. А тут еще подвезли интересный API, который позволяет отображать inline suggest в подсказках к клавиатуре.
В общем, кажется жизнь андроид разработчика налаживается 😉 https://bit.ly/3drdezJ
YouTube
What's new in Android Jetpack
Learn about the latest news in Android Jetpack, including recent changes to popular libraries, and exciting new libraries.
Resources:
Jetpack blog → https://goo.gle/3heHMYh
Android Jetpack → https://goo.gle/2Ai1SQH
Related Playlists:
Android 11 → https…
Resources:
Jetpack blog → https://goo.gle/3heHMYh
Android Jetpack → https://goo.gle/2Ai1SQH
Related Playlists:
Android 11 → https…
#Firebase от #Google, о котором ранее писал в том числе в блоге содержит прямо пул полезных инструментов для мобильного разработчика. От хостинга до аналитики с искусственным интеллектом и ML Kit. Сейчас хотел бы поговорить отдельно про Database функционал.
Fierbase Databse - по сути NoSql база в облаке. Довольно быстро настраивается, описываются правила доступа и можно работать. Все в целом неплохо… пока речь идет только о хранении данных одного пользователя. Так сказать такой облачный кэш для вашего приложения.
У нас начались с ним проблемы, когда захотели написать бэкофис под БД. Т.е. такую небольшую субдоминанта поверх, чтобы было удобно вести сервис. Так как это NoSql база, то в целом она плохо рассчитана на сильно связанные данные и таблицы, чтобы сделать простые отчеты через несколько таблиц пришлось повозиться. Но на этом самое веселое только началось.
Бесплатный режим Firebase включает 50 тысяч доступов на чтение. Вроде много. Я даже выставил «бюджет» в 5$ на всякий случай, чтобы заметить если вдруг что. Все заработало (не так быстро, как могло бы быть с SQL, но все же). А через неделю внезапно оказалось, что наши скрипты для бэра выжирали примерно 11 миллионов чтений в день 😄, что стоило примерно 100-200$ за эту неделю.
Опты с Firebase DB показал (я могу быть не прав, поправьте, если так), что
* Eдобно использовать, когда вам нужен простой бак, хранящий инфу одного пользователя
* Это может стоить дорого, а ограничить жестко возможности нет (только придет уведомление)
* Если вам нужен более продвинутый бэк, то, вероятно писать его поверх Firebase DB так себе идея. Лучше взять даже старый добрый MySQL и иметь контролируемое решение.
А что вы думаете про Firebase Datastore? (Именно про datastore, а не другие сервисы, о которых можно поговорить отдельно). https://bit.ly/31zSJgn
Fierbase Databse - по сути NoSql база в облаке. Довольно быстро настраивается, описываются правила доступа и можно работать. Все в целом неплохо… пока речь идет только о хранении данных одного пользователя. Так сказать такой облачный кэш для вашего приложения.
У нас начались с ним проблемы, когда захотели написать бэкофис под БД. Т.е. такую небольшую субдоминанта поверх, чтобы было удобно вести сервис. Так как это NoSql база, то в целом она плохо рассчитана на сильно связанные данные и таблицы, чтобы сделать простые отчеты через несколько таблиц пришлось повозиться. Но на этом самое веселое только началось.
Бесплатный режим Firebase включает 50 тысяч доступов на чтение. Вроде много. Я даже выставил «бюджет» в 5$ на всякий случай, чтобы заметить если вдруг что. Все заработало (не так быстро, как могло бы быть с SQL, но все же). А через неделю внезапно оказалось, что наши скрипты для бэра выжирали примерно 11 миллионов чтений в день 😄, что стоило примерно 100-200$ за эту неделю.
Опты с Firebase DB показал (я могу быть не прав, поправьте, если так), что
* Eдобно использовать, когда вам нужен простой бак, хранящий инфу одного пользователя
* Это может стоить дорого, а ограничить жестко возможности нет (только придет уведомление)
* Если вам нужен более продвинутый бэк, то, вероятно писать его поверх Firebase DB так себе идея. Лучше взять даже старый добрый MySQL и иметь контролируемое решение.
А что вы думаете про Firebase Datastore? (Именно про datastore, а не другие сервисы, о которых можно поговорить отдельно). https://bit.ly/31zSJgn
Блог Android разработчика
Популярные Android библиотеки для разработчиков
Накопленный опыт, собранные грабли и оттестированный временем и сотнями разработчиков функционал - как нельзя лучше описывает смысл библиотек, используемых в разработке. В использовании готовых библиотек есть свои плюсы и минусы: + Не надо тратить время на…
Наконец-так вышло то, что все* давно ждали!
*Не знаю как вы, но я и многие кого знаю из мобайла - точно.
#Google дал возможность оставлять отзыв о приложении прямо внутри приложения🌟
Теперь можно попросить пользователя оценить его опыт ровно тогда, когда он на это готов и не выгонять его из приложения при этом теряя конверсии. https://bit.ly/30IPbsR
*Не знаю как вы, но я и многие кого знаю из мобайла - точно.
#Google дал возможность оставлять отзыв о приложении прямо внутри приложения🌟
Теперь можно попросить пользователя оценить его опыт ровно тогда, когда он на это готов и не выгонять его из приложения при этом теряя конверсии. https://bit.ly/30IPbsR
Android Developers Blog
Leverage the In-App Review API for your Google Play reviews
Posted by Scott Lin, Product Manager, Google Play For many developers, ratings and reviews are an important touchpoint with users. M...
#Google довольно давно веел фичу «Отчет о тестировании» в Google play developer console. Вероятно вы ей уже пользовались, но на всякий случай решил напомнить о ней еще раз.
Когда вы загружаете APK/AppBundle в консоль, то Google прогоняет на версии ряд тестов. Он запускает ваше приложение на живых девайсах и даже постит скриншоты в консоль 🔥
По факту тестирования на почту упадет письмо с результатами.
Примечательно, что тестирование запускается не только на релизной версии, но и даже на версиях, предназначенных для внутреннего тестирования. Кстати если, вы им еще не пользуетесь, советую присмотреться, туда можно вообще пушить с вашего CI: https://dimlix.com/deploy-android-app-with-ease/ 😉
Итого последовательность действий при релизе может быть такая:
* Закидываете релиз кандидата в internal channel в google play
* Тестируете сами и ждете тестов от Google
* Смотрите отчет, какие потенциальные проблемы есть, вплоть до того, какие кликабельные зоны меньше рекомендуемого
* Катите оттестированное приложение в релиз
* ...
* Профит!
Когда вы загружаете APK/AppBundle в консоль, то Google прогоняет на версии ряд тестов. Он запускает ваше приложение на живых девайсах и даже постит скриншоты в консоль 🔥
По факту тестирования на почту упадет письмо с результатами.
Примечательно, что тестирование запускается не только на релизной версии, но и даже на версиях, предназначенных для внутреннего тестирования. Кстати если, вы им еще не пользуетесь, советую присмотреться, туда можно вообще пушить с вашего CI: https://dimlix.com/deploy-android-app-with-ease/ 😉
Итого последовательность действий при релизе может быть такая:
* Закидываете релиз кандидата в internal channel в google play
* Тестируете сами и ждете тестов от Google
* Смотрите отчет, какие потенциальные проблемы есть, вплоть до того, какие кликабельные зоны меньше рекомендуемого
* Катите оттестированное приложение в релиз
* ...
* Профит!
Блог Android разработчика
Удобный deploy android приложения
Deploy (выкатывание) андроид приложения можно разделить на несколько стадий - публикация для внутренней команды тестирования, развертывание на альфа и бета тестировщиков и, наконец, релиз...
Конфиденциальность пользователя - вот что интересует #Google (ну непосредственно доступа к ним самим 😅). Именно по этому изначально разрешения в #Android были все в манифесте.
Далее часть из них перекочевала в #Runtime #Permissions начиная с Android 6.0.
И сейчас, в Android 11 ожидаются небольшие изменения. Обо всем - в очередной статье в блоге. https://bit.ly/2S8mXSY
Далее часть из них перекочевала в #Runtime #Permissions начиная с Android 6.0.
И сейчас, в Android 11 ожидаются небольшие изменения. Обо всем - в очередной статье в блоге. https://bit.ly/2S8mXSY
Блог Android разработчика
Android Permissions
Если приложение хочет получить доступ к операционной системе и устройству - у него на это должны быть разрешения от пользователя. Это сделано для того, чтобы защитить юзера от злоумышленников и дать понять что именно программа хочет использовать. Разработчик…
#Google в последнее время знатно радует разработчиков плюшками из #Android #Jetpack. К примеру те же #ViewModel и #LiveData - лично я уже слабо представляю как можно писать приложение без них 🙈
Вы ведь в курсе про эти два божественных компонента? Если вдруг нет, в кратце написал про них статью. https://bit.ly/3i8tUhv
Вы ведь в курсе про эти два божественных компонента? Если вдруг нет, в кратце написал про них статью. https://bit.ly/3i8tUhv
Блог Android разработчика
ViewModel и LiveData. Примеры использования.
Архитектура Android приложений подразумевает сохранение и восстановление состояния Activity. В этом помогают ViewModel и LiveData. Два мощных компонента, которые являются частью Android Jetpack. Жизненный цикл Activity Давайте для начала совсем чуть-чуть…
Благодаря поддержке Юлы, конференция #AppsLive 2020 стала бесплатной (но надо зарегестрироваться)!
Будем говорить например про #Jetpack compose от #Google, remote builds на #CI и другие крутые штуки, связанные с мобильной разработкой и не только.
Кстати, Юла – сервис объявлений, входящий в состав Mail.ru Group и обслуживаемый сотней серверов и несколькими дата-центрами. У ребят явно есть чем поделиться с их-то масштабами.
Apps Live 2020 пройдёт 21 и 22 октября и для участия необходимо зарегистрироваться
https://appsconf.ru/moscow/2020
Будем говорить например про #Jetpack compose от #Google, remote builds на #CI и другие крутые штуки, связанные с мобильной разработкой и не только.
Кстати, Юла – сервис объявлений, входящий в состав Mail.ru Group и обслуживаемый сотней серверов и несколькими дата-центрами. У ребят явно есть чем поделиться с их-то масштабами.
Apps Live 2020 пройдёт 21 и 22 октября и для участия необходимо зарегистрироваться
https://appsconf.ru/moscow/2020
#Google выкатил в открытую бету библиотеку для разработки под Android Auto.
Это позволит писать приложения-дополнения для например навигации, паркинга и т.д. Т.е. расширять возможности карт Android Auto.
Не факт, что нам сейчас это интересно, но тенденции знать полезно.
#Статьи https://bit.ly/37k8V9X
Это позволит писать приложения-дополнения для например навигации, паркинга и т.д. Т.е. расширять возможности карт Android Auto.
Не факт, что нам сейчас это интересно, но тенденции знать полезно.
#Статьи https://bit.ly/37k8V9X
Android Developers Blog
Introducing the Android for Cars App Library
News and insights on the Android platform, developer tools, and events.
Очередная порция видосиков от #Google. Теперь про #AppBundle.
О том что это такое, как происходит подпись на стороне Google play и много другое по ссылке, проходим, смотрим, учимся!
#Статьи https://bit.ly/3mlV2MR
О том что это такое, как происходит подпись на стороне Google play и много другое по ссылке, проходим, смотрим, учимся!
#Статьи https://bit.ly/3mlV2MR
Android Developers Blog
MAD Skills — Become an Android App Bundle expert
Posted by Ben Weiss, Developer Relations Engineer
Подборка основных видеоуроков и статей по MAD (сумашедшим, но на самом деле просто "Modern Android Development") скилам от #Google.
Под катом все что нужно настоящему Android джедаю: #Jetpack, #Corutines, #KTX и многое другое.
#Статьи #Видео https://bit.ly/3qKRJRv
Под катом все что нужно настоящему Android джедаю: #Jetpack, #Corutines, #KTX и многое другое.
#Статьи #Видео https://bit.ly/3qKRJRv
Android Developers Blog
MAD Skills Kotlin and Jetpack: wrap-up
Posted by Florina Muntenescu, Developer Relations Engineer
Как адаптировать приложение под #Huawei Mobile Services в 6 простых шагов
В 2020 на долю Huawei в России пришлось почти 18% мобильного рынка. Фанбаза гиганта продолжает расти даже несмотря на отдельно стоящую от #Google экосистему сервисов. Пока власти США и Китая решают разногласия, разработчикам приходится выкручиваться
Георгий Гигаури, который разрабатывает Android-приложение Delivery Club, поделился своим опытом по оперативной реализации поддержки Huawei-устройств. Поэтапный гайд можно прочитать на Хабре, а для любителей видео в конце статьи есть приятный бонус с конференции Mobius 2020 https://bit.ly/3tnn0uS
В 2020 на долю Huawei в России пришлось почти 18% мобильного рынка. Фанбаза гиганта продолжает расти даже несмотря на отдельно стоящую от #Google экосистему сервисов. Пока власти США и Китая решают разногласия, разработчикам приходится выкручиваться
Георгий Гигаури, который разрабатывает Android-приложение Delivery Club, поделился своим опытом по оперативной реализации поддержки Huawei-устройств. Поэтапный гайд можно прочитать на Хабре, а для любителей видео в конце статьи есть приятный бонус с конференции Mobius 2020 https://bit.ly/3tnn0uS
👍1
#Google все больше и больше внимания уделяет качеству приложений в #GooglePlay. В связи с этим можно освежить в памяти правила оформления оных.
P.S. У нас на днях выпилили приложение за то, что закрытая (!) альфа версия начала что-то нарушать. Вернуть обратно получилось только через несколько дней, потому что время на review в google увеличилось. https://bit.ly/3h8oJRP
P.S. У нас на днях выпилили приложение за то, что закрытая (!) альфа версия начала что-то нарушать. Вернуть обратно получилось только через несколько дней, потому что время на review в google увеличилось. https://bit.ly/3h8oJRP
👍1
#Google основательно взялся за модерацию приложений в сторе. На днях у меня заблокировали приложение за кривое описание.
Все бы ничего, но приложение висит в маркете года с 2011 😂
Все бы ничего, но приложение висит в маркете года с 2011 😂
👍1
Наглядное видео про трассировку приложения в рамках #MAD skills от #Google.
#Статьи #Видео https://bit.ly/2Va3PZL
#Статьи #Видео https://bit.ly/2Va3PZL
YouTube
Performance: System tracing basics - MAD Skills
Welcome to the first episode of the Modern Android Development Skills series on Performance. Today, Android Performance Engineer Carmen Jackson will discuss Systrace, which is a super useful tool that lets you collect and examine timing information for everything…
👍1
Есть тут игроделы?
Для вас 4 мин. #Видео от #Google о том, что такое #Android Game Development Kit. https://www.youtube.com/watch?v=l1Duu5hEJBs
Для вас 4 мин. #Видео от #Google о том, что такое #Android Game Development Kit. https://www.youtube.com/watch?v=l1Duu5hEJBs
YouTube
Introducing Android Game Development Kit - Android Game Dev Show
In this episode, Dan Galpin introduces the Android Game Development Kit, which includes tools and libraries that simplify Android game development, improve development workflows, and help you optimize your Android games.
Android Game Development Kit → …
Android Game Development Kit → …