#Gradle #Kotlin
Gradle Site plugin was updated to 5.0
Не так давно вышел Gradle 5.0 и вот только сейчас Gradle полностью обновила пример по написанию своих собственных плагинов, добавив все новые функции. и теперь пример полностью на Kotlin 🎉.
Gradle Site plugin was updated to 5.0
Не так давно вышел Gradle 5.0 и вот только сейчас Gradle полностью обновила пример по написанию своих собственных плагинов, добавив все новые функции. и теперь пример полностью на Kotlin 🎉.
#Kotlin #Performance #Benchmark
"Kotlin performance on Android" от Александра Смирнова
Kotlin - прекрасный язык, предоставивший нам много синтаксиса и возможностей, позволяющих упростить реализацию задач. Но какова цена этого сахара? В статье вы можете найти сравнение производительности основных фичей Kotlin и того как они могут влиять на скорость работы приложения на устройствах.
Спойлер результатов - все примерно одинаково, но если вы еще включите R8/Proguard то результаты будут лучше, так что используйте их для релизных сборок вашего приложения.
"Kotlin performance on Android" от Александра Смирнова
Kotlin - прекрасный язык, предоставивший нам много синтаксиса и возможностей, позволяющих упростить реализацию задач. Но какова цена этого сахара? В статье вы можете найти сравнение производительности основных фичей Kotlin и того как они могут влиять на скорость работы приложения на устройствах.
Спойлер результатов - все примерно одинаково, но если вы еще включите R8/Proguard то результаты будут лучше, так что используйте их для релизных сборок вашего приложения.
Хабр
Kotlin performance on Android
Поговорим сегодня о производительности Kotlin на Android в production. Посмотрим под капот, реализуем хитрые оптимизаци, сравним байт-код. Наконец, серьезно подо...
#System
"Как работает SystemUI в Android" от @miproblema
Задумывались ли вы что происходит для отображения UI чтобы сделать ваше видео потише? А как работает отображение последних приложений? В статье автор разобралась покопалась в нутрах того, что происходит для запуска системного UI.
"Как работает SystemUI в Android" от @miproblema
Задумывались ли вы что происходит для отображения UI чтобы сделать ваше видео потише? А как работает отображение последних приложений? В статье автор разобралась покопалась в нутрах того, что происходит для запуска системного UI.
Хабр
Как работает SystemUI в Android
В этой статье я разберу архитектуру и принцип работы основного приложения Android — SystemUI. Меня заинтересовала эта тема, потому что мне интересно, как устро...
#WorkManager #ArchitectureComponents
https://developer.android.com/jetpack/docs/release-notes#december_19_2018
Под новый год Google радует нас подарками - вышел первый beta релиз WorkManager. Так что можно начинать интегрировать его в ваши приложения: API меняться не будет, за исключением критических багов, да и за последние 6 месяцев там было проделано много работы, как результат - библиотека уже стабильна.
https://developer.android.com/jetpack/docs/release-notes#december_19_2018
Под новый год Google радует нас подарками - вышел первый beta релиз WorkManager. Так что можно начинать интегрировать его в ваши приложения: API меняться не будет, за исключением критических багов, да и за последние 6 месяцев там было проделано много работы, как результат - библиотека уже стабильна.
#R8 #Optimization #Kotlin
"R8 Optimization: Null Data Flow Analysis" by Jake Warton|Google
Продолжение статей о том какие оптимизации выполняются в R8. В новой статье вы узнаете о том как оптимизируется работа с null.
"R8 Optimization: Null Data Flow Analysis" by Jake Warton|Google
Продолжение статей о том какие оптимизации выполняются в R8. В новой статье вы узнаете о том как оптимизируется работа с null.
Jake Wharton
R8 Optimization: Null Data Flow Analysis (Part 1) – Jake Wharton
#GooglePlay
"За что Android-разработчики ненавидят Google" от Евгения Трифонова
Рассказ о том что автоматизация процессов не есть всегда хорошо на примере удаления приложений из Google Play и того какие муки проходят разработчики, чтобы восстановить свои приложения там.
"За что Android-разработчики ненавидят Google" от Евгения Трифонова
Рассказ о том что автоматизация процессов не есть всегда хорошо на примере удаления приложений из Google Play и того какие муки проходят разработчики, чтобы восстановить свои приложения там.
Хабр
За что Android-разработчики ненавидят Google
Если посмотреть на мир Android, с первого взгляда кажется, что между разработчиками приложений и Google царят мир-дружба-жвачка. Компания поддержала любовь раз...
#GooglePlay
"Создаем инструменты для глубокого анализа рейтинга приложений в Google Play Store" от Skillbox
История о том как ребята решили создать модель предсказания рейтинга приложения, на основе чего выводили данные и что из этого вышло.
Результат исследований - делайте игру в категорию "Семейные" для всех возрастов 😁
"Создаем инструменты для глубокого анализа рейтинга приложений в Google Play Store" от Skillbox
История о том как ребята решили создать модель предсказания рейтинга приложения, на основе чего выводили данные и что из этого вышло.
Результат исследований - делайте игру в категорию "Семейные" для всех возрастов 😁
Хабр
Создаем инструменты для глубокого анализа рейтинга приложений в Google Play Store
От переводчика: сегодня публикуем для вас совместную статью трех разработчиков, Akaash Chikarmane, Erte Bablu и Nikhil Gaur, в которой рассказывается о методе...
В последнее время на канале я стал писать о Flutter на канале, так как это тема стала интересной в сообществе. Я хочу узнать ваше мнение о контенте по Flutter. За обсуждением предлагаю перейти в @android_broadcast_discussions.
anonymous poll
За Flutter – 30
👍👍👍👍👍👍👍 54%
Только Android SDK – 18
👍👍👍👍 32%
Без разницы – 8
👍👍 14%
👥 56 people voted so far. Poll closed.
anonymous poll
За Flutter – 30
👍👍👍👍👍👍👍 54%
Только Android SDK – 18
👍👍👍👍 32%
Без разницы – 8
👍👍 14%
👥 56 people voted so far. Poll closed.
#Kotlin #Dart #Flutter
"From Kotlin to Dart — an Android developer’s perspective" от Łukasz Wasylkowski|Tooploox
Flutter создает все больше хайпа в мире мобильной разработки, но один из самых популярных вопросов в сообществе - "Почему Dart?". В ответе на это даже есть целый развернутый ответ на FAQ Flutter. С другой стороны, я как Android разработчик уже давно наслаждаюсь всеми возможностями Kotlin и отсутсвие какого-то функционала в Dart меня смутило, например extension функций, null safety, sealed классов и прочего. В статье вы найдете сравнение Dart и Kotlin.
Я очень надеюсь, что появится поддержка Kotlin/Dart, JetBrains услышьте призыв!
"From Kotlin to Dart — an Android developer’s perspective" от Łukasz Wasylkowski|Tooploox
Flutter создает все больше хайпа в мире мобильной разработки, но один из самых популярных вопросов в сообществе - "Почему Dart?". В ответе на это даже есть целый развернутый ответ на FAQ Flutter. С другой стороны, я как Android разработчик уже давно наслаждаюсь всеми возможностями Kotlin и отсутсвие какого-то функционала в Dart меня смутило, например extension функций, null safety, sealed классов и прочего. В статье вы найдете сравнение Dart и Kotlin.
Я очень надеюсь, что появится поддержка Kotlin/Dart, JetBrains услышьте призыв!
Medium
From Kotlin to Dart — an Android developer’s perspective
How does Dart compare to Kotlin for Android development?
#Kotlin #Coroutines #LibUpdates
KotlinX.Coroutines 1.1.0 Released
Вышла новая версия библиотеки корутин. Апдейт направлен на улучшения дебага, производительности и стабильности корутин, а именно было сделано следующее:
👉 Читабельные стектрейсы корутин 🎉 - используйте системное свойство kotlinx.coroutines.debug
👉 Новый модуль kotlinx-coroutines-debug 🎉 - теперь можно получить дамп работы корутины
👉 Новый модуль kotlinx-coroutines-test 🎉 - тестировать становится удобнее, появилась функция Dispatchers.setMain() для подмены Dispatchers.Main в тестах
👉 Dispatchers.Default теперь потребляет меньше CPU ресурсов в JVM
👉 MainScope() и CoroutineScope.cancel() позволят вам в 1 строку создавать CoroutineContext для корутин
👉 Корутины теперь собираются в progressive режиме
👉 Множество других улучшений, исправлений багов и обновлений в документации
KotlinX.Coroutines 1.1.0 Released
Вышла новая версия библиотеки корутин. Апдейт направлен на улучшения дебага, производительности и стабильности корутин, а именно было сделано следующее:
👉 Читабельные стектрейсы корутин 🎉 - используйте системное свойство kotlinx.coroutines.debug
👉 Новый модуль kotlinx-coroutines-debug 🎉 - теперь можно получить дамп работы корутины
👉 Новый модуль kotlinx-coroutines-test 🎉 - тестировать становится удобнее, появилась функция Dispatchers.setMain() для подмены Dispatchers.Main в тестах
👉 Dispatchers.Default теперь потребляет меньше CPU ресурсов в JVM
👉 MainScope() и CoroutineScope.cancel() позволят вам в 1 строку создавать CoroutineContext для корутин
👉 Корутины теперь собираются в progressive режиме
👉 Множество других улучшений, исправлений багов и обновлений в документации
GitHub
kotlinx.coroutines/CHANGES.md at master · Kotlin/kotlinx.coroutines
Library support for Kotlin coroutines . Contribute to Kotlin/kotlinx.coroutines development by creating an account on GitHub.
#Dagger #LibUpdates
Release Dagger 2.20
Вышла новая версия библиотеки Dagger 2. Нового функционала релиз не принес, но сделал много улучшения:
👉 Увеличена скорость процессинга аннотаций
👉 Улучшение валидация графа
👉 Исправление багов
👉 Удаление deprecated кода
Release Dagger 2.20
Вышла новая версия библиотеки Dagger 2. Нового функционала релиз не принес, но сделал много улучшения:
👉 Увеличена скорость процессинга аннотаций
👉 Улучшение валидация графа
👉 Исправление багов
👉 Удаление deprecated кода
GitHub
google/dagger
A fast dependency injector for Android and Java. Contribute to google/dagger development by creating an account on GitHub.
Привет! Я ухожу отпуск, чтобы набраться сил, подготовиться к реализации планов на следующий год и давать вам ещё больше интересного материала, поэтому частота выхода материалов до 2 января будет ниже чем обычно.
Желаю вам всех хороших праздников 🎄 и отдыха !
Желаю вам всех хороших праздников 🎄 и отдыха !
#ARM #Hardware
“Huawei анонсирует 7-нанометровый процессор и чип для работы с искусственным интеллектом” от Hi-News.ru
Еще 7 лет назад я плевался от качества телефонов Huawei и отговаривал всех их покупать. Не так давно я подарил своей жене P20 Pro и я не видел камеру круче, крутой градиентный корпус, высокая скорость железа, но пока подводит софт. Также Huawei сейчас делает телефоны на своём железе и умудряется неплохо зарабатывать на них! Я могу только сказать что они молодцы, и я жду когда они начнут делать устройства на Android One без кастомизации и можно будет брать 👍
Но сейчас меня компания Huawei поразила новинками - серверный процессор HiSilicon Hi1620 на основе Arm v8a, 7 нм, до 64 ядер, 2.6-3.0 ГГц, Intel Xeon берегись 😁! Помимо этого представили контроллер для SSD с искусственным интеллектом.
Самое печальное, что Intel до сих пор не может освоить 7 нм тех процесс 😔
“Huawei анонсирует 7-нанометровый процессор и чип для работы с искусственным интеллектом” от Hi-News.ru
Еще 7 лет назад я плевался от качества телефонов Huawei и отговаривал всех их покупать. Не так давно я подарил своей жене P20 Pro и я не видел камеру круче, крутой градиентный корпус, высокая скорость железа, но пока подводит софт. Также Huawei сейчас делает телефоны на своём железе и умудряется неплохо зарабатывать на них! Я могу только сказать что они молодцы, и я жду когда они начнут делать устройства на Android One без кастомизации и можно будет брать 👍
Но сейчас меня компания Huawei поразила новинками - серверный процессор HiSilicon Hi1620 на основе Arm v8a, 7 нм, до 64 ядер, 2.6-3.0 ГГц, Intel Xeon берегись 😁! Помимо этого представили контроллер для SSD с искусственным интеллектом.
Самое печальное, что Intel до сих пор не может освоить 7 нм тех процесс 😔
Яндекс Дзен
Huawei анонсирует 7-нанометровый процессор и чип для работы с искусственным интеллектом
В последние несколько дней китайская компания Huawei делает анонс за анонсом. Нам рассказали об обновленном прямом конкуренте MacBook, новом телефоне Play и желании компании попасть в книгу рекордов Гиннеса.
#Security #BestPractices
Developing Secure Android Apps от Ahmed Abd-Elmeged
Хорошая статья с обзором наиболее популярных уязвимостей в плане безопасности приложение и как их стоит избегать.
В статье вы найдете следующий рекомендации:
👉 В релиз только с Proguard или R8
👉 Доступ к любым API должен осуществляться защищено. Например, используйте API ключ.
👉 Все ключи должны храниться в защищенном месте. Например, можно хранить ключи приложения в нативном коде. Ключи, получаемый динамически, лучше хранить в KeyStore.
👉 Используйте только HTTPS!
👉 Не используйте SharedPreferences для важных данных: ключей, паролей и пр.
👉 Проверяйте что попадает в логи релизной сборки приложения
👉 Важная информация должна храниться только во внутренне хранилище. Внешнее хранилище используйте только для публичных данных, которые вы можете показать кому угодно.
👉 Не передавайте данные в Intent, напр. через Broadcast Receiver. Передача данных между приложениями должна осуществляться через ContentProvider, либо LocalBroadcastManager, для обмена данными в рамках одного приложения.
👉 WebView таит много опасностей внутри себя
👉 Обновляйте ваши зависимости
👉 Доступ к Service и ContentProvider должен осуществляться только при наличие permission
👉 Шифруйте данные на внешнем хранилище, которые вы не можете разместить на внутреннем и валидируйте перед их использованием из приложения.
👉 Старайтесь минимизировать запрос личныз данных GDPR не дремлет!
👉 Рутованные устройства могут менять поведение устройств, поэтому часть функционала на них стоит отключать.Например, вам не будут давать возможности производить оплату или использовать приложения, которые имеют высокие требования к защите.
👉 Запрашивайте как можно меньше permission.
Developing Secure Android Apps от Ahmed Abd-Elmeged
Хорошая статья с обзором наиболее популярных уязвимостей в плане безопасности приложение и как их стоит избегать.
В статье вы найдете следующий рекомендации:
👉 В релиз только с Proguard или R8
👉 Доступ к любым API должен осуществляться защищено. Например, используйте API ключ.
👉 Все ключи должны храниться в защищенном месте. Например, можно хранить ключи приложения в нативном коде. Ключи, получаемый динамически, лучше хранить в KeyStore.
👉 Используйте только HTTPS!
👉 Не используйте SharedPreferences для важных данных: ключей, паролей и пр.
👉 Проверяйте что попадает в логи релизной сборки приложения
👉 Важная информация должна храниться только во внутренне хранилище. Внешнее хранилище используйте только для публичных данных, которые вы можете показать кому угодно.
👉 Не передавайте данные в Intent, напр. через Broadcast Receiver. Передача данных между приложениями должна осуществляться через ContentProvider, либо LocalBroadcastManager, для обмена данными в рамках одного приложения.
👉 WebView таит много опасностей внутри себя
👉 Обновляйте ваши зависимости
👉 Доступ к Service и ContentProvider должен осуществляться только при наличие permission
👉 Шифруйте данные на внешнем хранилище, которые вы не можете разместить на внутреннем и валидируйте перед их использованием из приложения.
👉 Старайтесь минимизировать запрос личныз данных GDPR не дремлет!
👉 Рутованные устройства могут менять поведение устройств, поэтому часть функционала на них стоит отключать.Например, вам не будут давать возможности производить оплату или использовать приложения, которые имеют высокие требования к защите.
👉 Запрашивайте как можно меньше permission.
Medium
Developing Secure Android Apps.
I’ve been developing android apps for over 3 years now and I’m also a security enthusiast. During this journey, most of the new talks and…