🚀 Exciting Project Announcement! 🚀
I'm thrilled to share that I’ve developed GitInvite – an open-source platform that makes collaborating on GitHub easier than ever! 🎉
💡 What is GitInvite? GitInvite allows users to generate secure GitHub repository invite links that can be shared with collaborators. No more manual collaborator additions! With just one link, you can grant access to your repos in a secure and efficient way.
🌟 Key Features:
- Generate secure invite links to share repository access.
- Cancel invite links anytime to prevent further use.
- Revoke access from users who gained access via the link.
- Easy collaboration for developers, teams, and open-source projects.
🎯 Beta Stage: GitInvite is currently in its beta stage, and I'm actively seeking feedback and suggestions for improvements. I would love to hear from the developer community to help shape the future of this tool!
💻 Want to try it out? You can access GitInvite here: https://gitinvite.vercel.app/
🛠 Developers: The code is open-source, and I welcome contributions! Check out the GitHub repo here: https://github.com/rahulps1000/GitInvite
Feel free to share your feedback, open issues, or contribute to the project! Let’s make GitHub collaboration even smoother together. 🙌
#GitHub#OpenSource#NextJS#GitInvite#Collaboration#Beta#WebDevelopment
‼️Google нашла решения проблем багов для конкретных устройств😂
Известно, что отдельные устройства под Android имеют собственные баги. Производители их не правят по разным причинам: закончилась поддержка, не хотят тратиться или предложили на форуме обход. Может просто идет долго доставка фикса до вашего устройства (всякое может быть)
Команда Android Jetpack сделала библиотеку core-backported-fixes, чтобы помочь разработчикам проверить состояния бага для текущего устройства 😂
Пример кода проверки issue KI_398591036 (проблема с цветом в фото на Pixel устройствах)
val fixManager = BackportedFixManager()
if (fixManager.isFixed(KnownIssues.KI_398591036)) {
Offer_experience_that_needs_fix()
} else {
Offer_experience_that_avoids_the_bug()
}
Все issue для проверки описаны в классе KnownIssues
#android#jetpack
‼️Важно изменение Android Jetpack - minSdk повысили с Api Level 21 (Android 5.0) до 23 (Android 6.0). Пока только в следующих версиях библиотек, но это всего 1-2 месяца.
Если ваше приложение поддерживает Android 5.0 и выше, то использовать новые версии библиотек уже не получится. Что можно сделать:
👉 Остаться на старых версиях
👉 Повысить minSdk до 23 или выше
👉 Поддерживать всё самостоятельно
Источник - Ian Lake из команды Android Jetpack
#android#jetpack
🚀Вышел Jetpack Browser 1.9.0 - библиотека для интеграции Custom Tab в приложения
👉 Появилась возможность добавить элементы контекстного меню в Custom Tabs — теперь вы можете собственные пункты меню внутри вкладки
👉 Появилось экспериментальное Auth Tab API. Цель - OAuth авторизация через Web браузер
👉 Улучшения TrustedWebActivityIntent
Есть и другие менее заметные обновления
#android#jetpack
🚀Вышел первый релиз Jetpack Core-i18n
Вышел первый стабильный релиз Jetpack Core-i18n - библиотека для упрощения интернационализации приложения. Первый релиз фокусируется на форматирование даты и времени, а также бэкпорт android.icu.text.MessageFormat
dependencies {
implementation("androidx.core:core-i18n:$core_version")
}
#android#jetpack
🚀Jetpack Core i18n 1.0 - библиотека для качественной интернационализации приложения
Google представила новую библиотеку c фокусом на 2 основных областях:
👉 Форматирование даты и времени, следуя лучшим практикам, опираясь на настройки пользователя и предоставляя доступ на новых и старых версиях Android
👉 Backport android.icu.text.MessageFormat - API для подготовки строк для показа пользователю с опциональными аргументами
👉 Библиотека будет портировать новые i18n API на старые версии Android
#android#jetpack
🚀Core-Viewtree 1.0.0 — стабильный релиз!🎉
AndroidX представил первую стабильную версию библиотеки core-viewtree, которая вводит новое понятие — disjoint parent для View, дополнительно к уже существующему View.parent
🔍 Что это значит?
Теперь View может иметь родителя, который есть у View, но не задан через View.parent. Это полезно в случаях, когда элемент находится вне стандартной иерархии, например: ViewOverlay, попапы, диалоги.
Такой подход позволяет гибко управлять связями между View, особенно в анимациях и сложных UI-компонентах.
Пример использования
class CustomOverlayView @JvmOverloads constructor(
context: Context, attrs: AttributeSet? = null
) : View(context, attrs) {
fun attachToOverlay(overlayView: View) {
// Устанавливаем overlayView как разобщённого родителя
ViewTreeDisjointParent.set(this, overlayView)
}
}
Где используется
AndroidX автоматически задаёт disjoint parent для ViewOverlay, начиная с Transition 1.6.0-alpha01. Также разработчики могут самостоятельно назначать такие связи.
Будете использовать в своих проектах? Делитесь мыслями в комментариях! 👇
#android#jetpack
📹НОВОЕ ВИДЕО 🎉Полный разбор Jetpack ViewModel для Android и Kotlin Multiplatform (44 мин)
ViewModel - один из самых популярных компонентов Android Jetpack в современной Android разработки. Уже сейчас там есть поддержку Kotlin Multiplatform.
Но знаете ли вы возможности ViewModel? Обо всём этом в новом видео на канале
Видео доступно на 📹YouTube📹VK Video📺RuTube
#AndroidBroadcast#jetpack
🚀Вышел Jetpack Window Manager 1.4 - библиотека для работы с разными форматами устройства и несколькими окнами с поддержкой KMP
Что нового в свежей версии:
👉 Улучшения Activity Embedding
👉 Улучшения API WindowMetrics
👉 Улучшили API для тестирования
#jetpack#kmp