💻 KODEIN — удобная библиотека Kotlin для управления зависимостями
KODEIN (Kotlin Dependency Injection) — это полезная библиотека для инъекции/получения зависимостей, она очень прост в использовании и настройке.
KODEIN позволяет:
— не заботиться о порядке инициализации зависимостей
— легко привязывать классы или интерфейсы к их экземплярам, или фабрикам
При этом KODEIN предлагает очень простой и читаемый декларативный DSL, эта библиотека не подвержена стиранию типов (как Java), прекрасно интегрируется с Android, предлагает идиоматический API в стиле Kotlin.
KODEIN можно использовать с Java.
Пример, показывающий всю мощь KODEIN:
🖥 GitHub
🟡 Доки
dependencies {
implementation 'org.kodein.di:KODEIN:7.21.1'
}
KODEIN (Kotlin Dependency Injection) — это полезная библиотека для инъекции/получения зависимостей, она очень прост в использовании и настройке.
KODEIN позволяет:
— не заботиться о порядке инициализации зависимостей
— легко привязывать классы или интерфейсы к их экземплярам, или фабрикам
При этом KODEIN предлагает очень простой и читаемый декларативный DSL, эта библиотека не подвержена стиранию типов (как Java), прекрасно интегрируется с Android, предлагает идиоматический API в стиле Kotlin.
KODEIN можно использовать с Java.
Пример, показывающий всю мощь KODEIN:
val di = DI {
bindProvider<Dice> { RandomDice(0, 5) }
bindSingleton<DataSource> { SqliteDS.open("path/to/file") }
}
class Controller(private di: DI) {
private val ds: DataSource by di.instance()
}
🖥 GitHub
🟡 Доки
💻 voyager — мультиплатформенная навигационная библиотека для Jetpack Compose
Позволяет создавать масштабируемые приложения на Kotlin на основе удобного API
🖥 GitHub
Позволяет создавать масштабируемые приложения на Kotlin на основе удобного API
🖥 GitHub
⚡️Руководитель команд разработки и один из разработчиков мобильного приложения Яндекс Карт рассказали, как они росли вместе с проектом. Подробнее в карточках.
Хотите так же? Это возможно 💯
Команда мобильной разработки Карт и Навигатора расширяется, и мы ищем:
➡️iOS-разработчика
#Москва #Белград #iOS
Что вы будете делать: участвовать в разработке мобильного приложения для iOS, глубоко прорабатывать задачи команды, совершенствовать процессы и инфраструктуру разработки.
➡️Android-разработчика
#Москва #Android
Что вы будете делать: участвовать в разработке мобильного приложения для Android, помогать расширять возможности существующих сценариев и создавать новые.
Приходите, будем расти вместе💪
Реклама. ООО "Яндекс", ИНН 7736207543.
Хотите так же? Это возможно 💯
Команда мобильной разработки Карт и Навигатора расширяется, и мы ищем:
➡️iOS-разработчика
#Москва #Белград #iOS
Что вы будете делать: участвовать в разработке мобильного приложения для iOS, глубоко прорабатывать задачи команды, совершенствовать процессы и инфраструктуру разработки.
➡️Android-разработчика
#Москва #Android
Что вы будете делать: участвовать в разработке мобильного приложения для Android, помогать расширять возможности существующих сценариев и создавать новые.
Приходите, будем расти вместе💪
Реклама. ООО "Яндекс", ИНН 7736207543.
Работа в Яндексе
Вакансия «Разработчик для iOS в Карты и Навигатор» в Яндексе — работа в компании Яндекс для IT-специалистов
В приложении Карт используются разнообразные технологии и постоянно добавляются новые возможности. У нас устоявшиеся процессы с прозрачными флоу и регулярные релизы. Вам предстоит реализовывать смелые UX-эксперименты, применять Kotlin Multiplatform, разрабатывать…
💻 ImageToolbox — мощный open-source редактор изображений на Kotlin
ImageToolbox может обрезать картинки, применять фильтры, добавлять другие изображения, удалять фон, редактировать EXIF и даже создавать PDF-файлы
🖥 GitHub
ImageToolbox может обрезать картинки, применять фильтры, добавлять другие изображения, удалять фон, редактировать EXIF и даже создавать PDF-файлы
🖥 GitHub
🖥 Релиз Winlator 7.0, окружения для запуска Windows-приложений в Android, написанного на Java (и C)
Состоялся релиз открытого проекта окружения для запуска Windows-приложений в Android под названием Winlator 7.0.
Проект Android-приложения Winlator 7.0 (размер APK-пакета составляет 251 МБ) предоставляет собой обвязку над Wine и эмуляторами Box86/Box64 для выполнения Windows-приложений на платформе Android.
Инструмент Winlator разворачивает Linux-окружение на базе Ubuntu с Mesa, DXVK, D8VK, Vkd3d и CNC DDraw, в котором при помощи эмулятора и Wine на ARM-устройствах с Android выполняются Windows-приложения, собранные для архитектуры x86.
🖥 Исходный код проекта написан на языках C и Java и опубликован на GitHub под лицензией MIT.
Состоялся релиз открытого проекта окружения для запуска Windows-приложений в Android под названием Winlator 7.0.
Проект Android-приложения Winlator 7.0 (размер APK-пакета составляет 251 МБ) предоставляет собой обвязку над Wine и эмуляторами Box86/Box64 для выполнения Windows-приложений на платформе Android.
Инструмент Winlator разворачивает Linux-окружение на базе Ubuntu с Mesa, DXVK, D8VK, Vkd3d и CNC DDraw, в котором при помощи эмулятора и Wine на ARM-устройствах с Android выполняются Windows-приложения, собранные для архитектуры x86.
🖥 Исходный код проекта написан на языках C и Java и опубликован на GitHub под лицензией MIT.
Последняя неделя регистрации на Yandex BDUI Conf! 🎉
22 июня Яндекс проведёт большую конференцию для мобильных разработчиков по BDUI
Вместе со спикерами из Яндекса, Яндекс Маркета, Авито, X5 Tech и ВСК будем разбираться, как с помощью бэкенда сделать красивые и функциональные приложения. В программе:
— 2 трека с докладами: продуктовый и инфраструктурный;
— активности от Яндекс Маркета с подарками;
— экскурсия по офису Яндекса на «Парке культуры»;
— афтерпати с нетворкингом и музыкой.
Зарегистрироваться можно на сайте конференции. Она пройдёт 22 июня в Москве в «Экстрополисе». Если не получится присутствовать очно, присоединяйтесь к нашей трансляции!
До встречи на Yandex BDUI Conf — будет здорово! 👋
22 июня Яндекс проведёт большую конференцию для мобильных разработчиков по BDUI
Вместе со спикерами из Яндекса, Яндекс Маркета, Авито, X5 Tech и ВСК будем разбираться, как с помощью бэкенда сделать красивые и функциональные приложения. В программе:
— 2 трека с докладами: продуктовый и инфраструктурный;
— активности от Яндекс Маркета с подарками;
— экскурсия по офису Яндекса на «Парке культуры»;
— афтерпати с нетворкингом и музыкой.
Зарегистрироваться можно на сайте конференции. Она пройдёт 22 июня в Москве в «Экстрополисе». Если не получится присутствовать очно, присоединяйтесь к нашей трансляции!
До встречи на Yandex BDUI Conf — будет здорово! 👋
💻 0day в Pixel: Google выпускает экстренный патч для своих смартфонов
Вслед за уже привычным Patch Tuesday от Microsoft, компания Google также выпустила обновления для устранения 50 уязвимостей безопасности в своих устройствах Pixel и предупредила, что одна из них, отслеживаемая как CVE-2024-32896, представляет собой ошибку повышения привилегий (EoP) и уже использовалась в реальных атаках в качестве Zero-day уязвимости.
«Есть признаки того, что CVE-2024-32896 уже могла быть использована ранее в ограниченных целевых атаках», — предупредила компания. «Все поддерживаемые устройства Google получат обновление до уровня патча 2024-06-05. Мы призываем всех пользователей Pixel незамедлительно установить эти обновления на свои устройства».
Google также отметила 44 других ошибки безопасности, непосредственно касающиеся устройств Pixel. Семь из них представляют собой уязвимости повышения привилегий и считаются критическими.
Устройства Pixel, хотя и работают на Android, получают отдельные обновления безопасности и...
Вслед за уже привычным Patch Tuesday от Microsoft, компания Google также выпустила обновления для устранения 50 уязвимостей безопасности в своих устройствах Pixel и предупредила, что одна из них, отслеживаемая как CVE-2024-32896, представляет собой ошибку повышения привилегий (EoP) и уже использовалась в реальных атаках в качестве Zero-day уязвимости.
«Есть признаки того, что CVE-2024-32896 уже могла быть использована ранее в ограниченных целевых атаках», — предупредила компания. «Все поддерживаемые устройства Google получат обновление до уровня патча 2024-06-05. Мы призываем всех пользователей Pixel незамедлительно установить эти обновления на свои устройства».
Google также отметила 44 других ошибки безопасности, непосредственно касающиеся устройств Pixel. Семь из них представляют собой уязвимости повышения привилегий и считаются критическими.
Устройства Pixel, хотя и работают на Android, получают отдельные обновления безопасности и...
🖥 Вот как легко можно записывать и воспроизводить аудио в Android
GitHub https://github.com/philipplackner/AudioRecorder
https://www.youtube.com/watch?v=4MJFmhcONfI
#Android
GitHub https://github.com/philipplackner/AudioRecorder
https://www.youtube.com/watch?v=4MJFmhcONfI
#Android
GitHub
GitHub - philipplackner/AudioRecorder
Contribute to philipplackner/AudioRecorder development by creating an account on GitHub.
💻 KotlinPoet — это Kotlin и Java API для генерации исходных файлов `.kt`
Для обеспечения максимальной переносимости KotlinPoet генерирует код с явными модификаторами видимости. Это обеспечивает совместимость как со стандартными проектами Kotlin, так и с проектами, использующими явный режим API.
🖥 GitHub
<dependency>
<groupId>com.squareup</groupId>
<artifactId>kotlinpoet-jvm</artifactId>
<version>[version]</version>
</dependency>
Для обеспечения максимальной переносимости KotlinPoet генерирует код с явными модификаторами видимости. Это обеспечивает совместимость как со стандартными проектами Kotlin, так и с проектами, использующими явный режим API.
🖥 GitHub
💻 kotlin-inject — библиотека Kotlin для dependency injection
Строительным блоком kotlin-inject является компонент, который объявляется с помощью аннотации в абстрактном классе, реализация этого компонента будет сгенерирована
В этом компоненте можно объявить абстрактные свойства, доступные только для чтения, или функции, возвращающие экземпляр заданного типа. И kotlin-inject разберётся, как сконструировать этот тип
🖥 GitHub
🟡 Доки
Строительным блоком kotlin-inject является компонент, который объявляется с помощью аннотации в абстрактном классе, реализация этого компонента будет сгенерирована
В этом компоненте можно объявить абстрактные свойства, доступные только для чтения, или функции, возвращающие экземпляр заданного типа. И kotlin-inject разберётся, как сконструировать этот тип
🖥 GitHub
🟡 Доки
📱 Вышла 3 бета-версия Android 15 с улучшениями для автономности, ИИ и конфиденциальности
С состоявшимся на днях выпуском Android 15 Beta 3 ОС получила статус Platform Stability — это значит, что API для разработчиков и связанное с приложениями поведение платформы меняться больше не будут, а ориентированные на Android 15 программные продукты уже могут выпускаться в Google Play.
Третья бета-версия Android 15 открывает новые возможности работы с медиаданными и ИИ, возможности использовать нестандартные формфакторы устройств; повышены эффективность аккумуляторов и стабильность работы приложений, повысились конфиденциальность и безопасность пользователей — и всё это коснулось разных линеек устройств.
При входе в учётные записи в оптимизированных для Android 15 приложений основным способом авторизации стали ключи доступа с защитой через биометрию или код блокировки — при его отклонении система предложит альтернативные варианты входа; все доступные варианты покажет системная клавиатура или выпадающие списки в ...
С состоявшимся на днях выпуском Android 15 Beta 3 ОС получила статус Platform Stability — это значит, что API для разработчиков и связанное с приложениями поведение платформы меняться больше не будут, а ориентированные на Android 15 программные продукты уже могут выпускаться в Google Play.
Третья бета-версия Android 15 открывает новые возможности работы с медиаданными и ИИ, возможности использовать нестандартные формфакторы устройств; повышены эффективность аккумуляторов и стабильность работы приложений, повысились конфиденциальность и безопасность пользователей — и всё это коснулось разных линеек устройств.
При входе в учётные записи в оптимизированных для Android 15 приложений основным способом авторизации стали ключи доступа с защитой через биометрию или код блокировки — при его отклонении система предложит альтернативные варианты входа; все доступные варианты покажет системная клавиатура или выпадающие списки в ...
🖥 Lindroid — новый способ использования Linux на устройствах Android
Разработчик Эрфан Абди под ником Khode_Erfan представил новый способ использования Linux на мобильных устройствах на базе Android в рамках проекта Lindroid.
Данный проект похож на обратную реализацию Waydroid, также пользователи могут задействовать полностью аппаратно поддерживаемый код Linux на своем Android в качестве рабочего приложения. Согласно пояснению автора проекта, код Linux работает внутри контейнера и имеет доступ к реальному аппаратному обеспечению смартфона.
Автор пояснил, что Lindroid поддерживает несколько дисплеев и опцию multi input, а также совместим с режимом Android desktop mode.
🖥 GitHub
Разработчик Эрфан Абди под ником Khode_Erfan представил новый способ использования Linux на мобильных устройствах на базе Android в рамках проекта Lindroid.
Данный проект похож на обратную реализацию Waydroid, также пользователи могут задействовать полностью аппаратно поддерживаемый код Linux на своем Android в качестве рабочего приложения. Согласно пояснению автора проекта, код Linux работает внутри контейнера и имеет доступ к реальному аппаратному обеспечению смартфона.
Автор пояснил, что Lindroid поддерживает несколько дисплеев и опцию multi input, а также совместим с режимом Android desktop mode.
🖥 GitHub
💻 LibreTube — альтернативный Android-клиент для YouTube на Kotlin
Если кто не в теме, у YouTube крайне агрессивная политика конфиденциальности, которая предполагает не самое этичное использование данных пользователей.
YouTube хранит слишком много личных данных — от идей, музыкальных предпочтений, контента до политических взглядов и многого другого.
LibreTube призван сохранить конфиденциальность пользователей, проект заточен под обход механизмов Google для сбора данных.
LibreTube опирается на Piped API, который использует прокси-серверы для обхода сбора данных Google и включает в себя некоторые другие дополнительные функции.
🖥 GitHub
Если кто не в теме, у YouTube крайне агрессивная политика конфиденциальности, которая предполагает не самое этичное использование данных пользователей.
YouTube хранит слишком много личных данных — от идей, музыкальных предпочтений, контента до политических взглядов и многого другого.
LibreTube призван сохранить конфиденциальность пользователей, проект заточен под обход механизмов Google для сбора данных.
LibreTube опирается на Piped API, который использует прокси-серверы для обхода сбора данных Google и включает в себя некоторые другие дополнительные функции.
🖥 GitHub
🖥 SpamBlocker
Приложение для блокировки звонков и СМС на Android
Поддерживаемые фильтры:
▫️ Номер телефона (регулярное выражение)
▫️ Наличие в контактах
▫️ Повторный звонок
▫️ Содержимое СМС (регулярное выражение)
Github
Приложение для блокировки звонков и СМС на Android
Поддерживаемые фильтры:
▫️ Номер телефона (регулярное выражение)
▫️ Наличие в контактах
▫️ Повторный звонок
▫️ Содержимое СМС (регулярное выражение)
Github
💻 Connectivity — совсем свежая библиотека Kotlin для мониторинга сети
Connectivity позволяет отслеживать сетевое подключение с помощью встроенных API на устройствах Android и Apple или путем выполнения HTTP-запросов к указанным хостам.
🖥 GitHub
Connectivity позволяет отслеживать сетевое подключение с помощью встроенных API на устройствах Android и Apple или путем выполнения HTTP-запросов к указанным хостам.
🖥 GitHub
💻 lets-plot — мультиплатформенная библиотека для построения графиков и диаграмм, написанная на Kotlin и Python
—
Графики, созданные с помощью lets-plot можно встраивать в JVM (Swing, JavaFX) и Kotlin/JS-приложения.
🖥 GitHub
—
pip install lets-plot
Графики, созданные с помощью lets-plot можно встраивать в JVM (Swing, JavaFX) и Kotlin/JS-приложения.
🖥 GitHub