В новом дайджесте мы разбираемся с гармонией скриптов, бесплатными звуками для приложений, прошедшим конкурсом Telegram и остатками I/O, водой, игровым рабством и самыми скачиваемыми приложениями в мире и из России.
![](https://habrastorage.org/r/w1560/webt/lk/n6/by/lkn6bym77lfyydvxeegzhll_tyc.png)
Думаю, многие слышали, что Java позволяет в рантайме через ClassLoader модифицировать dex уже установленного приложения. С помощью этого можно в рантайме подгружать скомпилированный код и использовать его. Но Google к таким махинациям относится, мягко говоря, не слишком лояльно и банит уличённые в подобном приложения. Сегодня рассказываем о площадках с библиотеками коротких звуков и семплов, распространяемых в основном по лицензиям класса Creative Commons.
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в
Telegram-канале.
iOS
• (+10) Изменяем содержимое уведомления приложения iOS
• (+8) Swift: ARC и управление памятью
• (+4) Интервью — 10 вопросов про Swift, часть 1
• Суд разрешил потребителям судить Apple за монополизм
•
Рисуем плавные графики с помощью UIBezierPath
•
MapKit — показываем карту и отслеживаем локацию в 7 строк на Swift
•
Создаем крутую трехмерную анимацию боковой панели
•
Flow-координатор на стероидах
•
Как сделать аудио-расширение в XCode
•
Топ-10 проблем iOS-разработчиков в 2019
Android
• (+24) In-App Updates: ускоряем процесс обновления приложения на Android
• (+20) «То, что мы обсуждаем в России, актуально и на Западе»: интервью с Денисом Неклюдовым
• (+9) Безопасность со вкусом Google
• (+3) Принимаем участие в недавнем Telegram Contest, пишем крутое OpenGL ES приложение и выигрываем ничего
• (+2) 100 вещей анонсированных на I/O №19
• ((0) Android-приложение с фактами о Чаке Норрисе на Kotlin
• Бесплатный курс “Разработка Android-приложений на Kotlin” от Google
•
Android Dev Podcast #93. Google I/O 2019. Репортаж с места событий.
•
Определяем утечки памяти в RxSwift
•
Пишем Android UI код в Jetpack Compose
•
Android Q – главные изменения
•
Создает приложение для ведения заметок на Flutter/Dart
•
Kotlin – предпочитаемый Google язык для Android разработки
•
Flutter и Fuchsia – смерть React и Android?
•
Управляем сложной навигацией с одной Activity и Android Jetpack Navigation
•
Используем ViewModelScope
•
Решаем игру на поиск слов с Android и ML Kit
•
Исследуем встроенные в приложения обновления
•
Создаем анимацию карточек с MotionLayout
•
Самодельная реактивная Model Store с использованием RxJava
•
Google I/O 2019 для дизайнера
•
Все для Android-разработчика с I/O 2019
Разработка
• (+161) В этой статье слишком много воды
• (+38) Пять лет рабства
• (+24) Как разобрать сетевой протокол мобильной MMORPG
• (+19) Анимация в мобильных приложениях: тестируем Lottie
• (+14) Реализовываем CircularRevealAnimation на Flutter и попутно публикуем библиотеку на pub.dev
• (+13) Опасность внутриигрового сбора данных
• (+11) Сделка на $39 млн: почему создатели опенсорсной СУБД решили заняться мобильными разработками
• (+10) Пиксельные отступы в текстурной развертке
• (+7) Первая игра на unity или на что у меня ушло полгода
• (+5) Модель для разработки, на основе «элементов»
• (+3) Мой опыт ошибок
• АйтиХайп: Андрей Бреслав
• AppsCast #5: Эмпатия в IT
• Podlodka #110: Рекомендательные системы и ML
• Mobile People Talks #4: React Native – быть или не быть
• Яндекс открыл разработчикам доступ к своей игровой платформе
• Как творческому человеку найти себя в IT: из дизайна в UX
• Flutter Dev Podcast #4: Google I/O 2019
• 100 вопросов для UX-анализа
• Принципы гештальта в дизайне интерфейсов, которые знает, пожалуй, каждый UX/UI-дизайнер
• «Не тестируйте приложения на детях программистов»
•
7 расширений VSCode, которые упростят вашу жизнь
•
Улучшите ваш UX с помощью микро-взаимодействий
•
Как проходят Code Review в Microsoft
•
Как сделать кастомный бинарник TensorFlow для Android и iOS
•
Мы заработали $1,052,000 в 2018 продавая UI инструменты. Вот что мы узнали.
•
142 сайта для улучшения прохождения интервью
•
Игнорируйте хайп, когда изучаете программирование
•
За и Против Flutter Web
•
7 лет разработки – выученные уроки
•
10 советов для создания увлекательного дизайна приложения
•
Психология парного программирования
•
Фундаментальные принципы дизайна для не-дизайнеров
•
Продуктовый кошмар в 15 комиксах
•
Используем библиотеки Go во Flutter
•
Я превратил мое интервью в Google в стартап
Аналитика, маркетинг и монетизация
• (+12) Повышающий продажи маркетинговый абсурд: проверенные кейсы
• (+5) Расчёт каннибализации на основе классического A/B-теста и метод bootstrap’а
• Самые скачиваемые приложения в 1 квартале 2019
• Привлечь удержать: кейс Всемайки.ру и AppMetrica
• Продвижение мобильной игры Talion до выхода в стор. Комплексный подход Zorka.Mobi и Gamevil
• Rivet: английский для детей
• Ключевые показатели работы приложений 2019: Global Benchmarks Report от Adjust
• Noom получает $58 млн на приложение для похудения
• Самые популярные приложения из России
AI, Устройства, IoT
• (+164) Как мы боремся с копированием контента, или первая adversarial attack в проде
• (+40) Кондиционер айтишника. Часть I
• (+14) ACPI: Добавление устройств без перекомпиляции ядра
• (+11) Какие решения есть у Ростелекома для IIoT
• (+6) Брайлевская клавиатура
• Google показал Translatotron для сквозного перевода речи
• Технодайджест (апрель 2019)
•
Первая программа для Arduino на C
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
![](https://habrastorage.org/webt/lk/n6/by/lkn6bym77lfyydvxeegzhll_tyc.png)
Думаю, многие слышали, что Java позволяет в рантайме через ClassLoader модифицировать dex уже установленного приложения. С помощью этого можно в рантайме подгружать скомпилированный код и использовать его. Но Google к таким махинациям относится, мягко говоря, не слишком лояльно и банит уличённые в подобном приложения. Сегодня рассказываем о площадках с библиотеками коротких звуков и семплов, распространяемых в основном по лицензиям класса Creative Commons.
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в
![](https://habrastorage.org/webt/5e/k7/bf/5ek7bfhjzilma-pbharuioaa7lw.png)
![](https://habrastorage.org/getpro/habr/post_images/f19/30a/c49/f1930ac4945596eb9707bc7a01bc5bdc.png)
• (+10) Изменяем содержимое уведомления приложения iOS
• (+8) Swift: ARC и управление памятью
• (+4) Интервью — 10 вопросов про Swift, часть 1
• Суд разрешил потребителям судить Apple за монополизм
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
![](https://habrastorage.org/getpro/habr/post_images/e1a/3cf/2a8/e1a3cf2a8b65a0da69bbdd5c0ad040fe.png)
• (+24) In-App Updates: ускоряем процесс обновления приложения на Android
• (+20) «То, что мы обсуждаем в России, актуально и на Западе»: интервью с Денисом Неклюдовым
• (+9) Безопасность со вкусом Google
• (+3) Принимаем участие в недавнем Telegram Contest, пишем крутое OpenGL ES приложение и выигрываем ничего
• (+2) 100 вещей анонсированных на I/O №19
• ((0) Android-приложение с фактами о Чаке Норрисе на Kotlin
• Бесплатный курс “Разработка Android-приложений на Kotlin” от Google
•
![](https://habrastorage.org/getpro/habr/post_images/686/1c1/045/6861c1045bee84154ebf29f5cc1fb355.png)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
![](https://habrastorage.org/getpro/habr/post_images/708/1c6/34e/7081c634ec176ab6b953d9d19e82a09a.png)
• (+161) В этой статье слишком много воды
• (+38) Пять лет рабства
• (+24) Как разобрать сетевой протокол мобильной MMORPG
• (+19) Анимация в мобильных приложениях: тестируем Lottie
• (+14) Реализовываем CircularRevealAnimation на Flutter и попутно публикуем библиотеку на pub.dev
• (+13) Опасность внутриигрового сбора данных
• (+11) Сделка на $39 млн: почему создатели опенсорсной СУБД решили заняться мобильными разработками
• (+10) Пиксельные отступы в текстурной развертке
• (+7) Первая игра на unity или на что у меня ушло полгода
• (+5) Модель для разработки, на основе «элементов»
• (+3) Мой опыт ошибок
• АйтиХайп: Андрей Бреслав
• AppsCast #5: Эмпатия в IT
• Podlodka #110: Рекомендательные системы и ML
• Mobile People Talks #4: React Native – быть или не быть
• Яндекс открыл разработчикам доступ к своей игровой платформе
• Как творческому человеку найти себя в IT: из дизайна в UX
• Flutter Dev Podcast #4: Google I/O 2019
• 100 вопросов для UX-анализа
• Принципы гештальта в дизайне интерфейсов, которые знает, пожалуй, каждый UX/UI-дизайнер
• «Не тестируйте приложения на детях программистов»
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
![](https://habrastorage.org/getpro/habr/post_images/509/dc9/bde/509dc9bde69347ecbe0c21ff2973d7e7.jpg)
• (+12) Повышающий продажи маркетинговый абсурд: проверенные кейсы
• (+5) Расчёт каннибализации на основе классического A/B-теста и метод bootstrap’а
• Самые скачиваемые приложения в 1 квартале 2019
• Привлечь удержать: кейс Всемайки.ру и AppMetrica
• Продвижение мобильной игры Talion до выхода в стор. Комплексный подход Zorka.Mobi и Gamevil
• Rivet: английский для детей
• Ключевые показатели работы приложений 2019: Global Benchmarks Report от Adjust
• Noom получает $58 млн на приложение для похудения
• Самые популярные приложения из России
![](https://habrastorage.org/getpro/habr/post_images/853/812/9f5/8538129f5e7b404a720121cb9c3814db.jpg)
• (+164) Как мы боремся с копированием контента, или первая adversarial attack в проде
• (+40) Кондиционер айтишника. Часть I
• (+14) ACPI: Добавление устройств без перекомпиляции ядра
• (+11) Какие решения есть у Ростелекома для IIoT
• (+6) Брайлевская клавиатура
• Google показал Translatotron для сквозного перевода речи
• Технодайджест (апрель 2019)
•
![](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.