fa
Feedback
Android Broadcast

Android Broadcast

رفتن به کانال در Telegram

Подборка новостей и статей для Android разработчиков. Реклама и связь с автором @ab_manager РКН https://abdev.by/rkn_tg_ab #MQRZR

نمایش بیشتر

📈 تحلیل کانال تلگرام Android Broadcast

کانال Android Broadcast (@android_broadcast) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 14 579 مشترک است و جایگاه 8 743 را در دسته فناوری و برنامه‌ها و رتبه 45 335 را در منطقه روسيا دارد.

📊 شاخص‌های مخاطب و پویایی

از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 14 579 مشترک جذب کرده است.

بر اساس آخرین داده‌ها در تاریخ 11 ژوئیه, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر 35 و در ۲۴ ساعت گذشته برابر 0 بوده و همچنان دسترسی گسترده‌ای حفظ شده است.

  • وضعیت تأیید: تأیید نشده
  • نرخ تعامل (ER): میانگین تعامل مخاطب 43.32% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 24.33% واکنش نسبت به کل مشترکان کسب می‌کند.
  • دسترسی پست‌ها: هر پست به طور میانگین 6 318 بازدید دریافت می‌کند. در اولین روز معمولاً 3 548 بازدید جمع‌آوری می‌شود.
  • واکنش‌ها و تعامل: مخاطبان به‌طور فعال حمایت می‌کنند؛ میانگین واکنش به هر پست 43 است.
  • علایق موضوعی: محتوا بر موضوعات کلیدی مانند api, kotlin, gradle, сборка, androiddev تمرکز دارد.

📝 توضیح و سیاست محتوایی

نویسنده این فضا را محل بیان دیدگاه‌های شخصی توصیف می‌کند:
Подборка новостей и статей для Android разработчиков. Реклама и связь с автором @ab_manager РКН https://abdev.by/rkn_tg_ab #MQRZR

به لطف به‌روزرسانی‌های پرتکرار (آخرین داده در تاریخ 12 ژوئیه, 2026)، کانال همواره به‌روز و دارای دسترسی بالاست. تحلیل‌ها نشان می‌دهد مخاطبان به‌طور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامه‌ها تبدیل کرده‌اند.

14 579
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-17 روز
+3530 روز
آرشیو پست ها
Как много приложений уже используют BDUI (Backend Driven UI или Server Driven UI) или перешли на него? Вы удивитесь, но МНОГО
Как много приложений уже используют BDUI (Backend Driven UI или Server Driven UI) или перешли на него? Вы удивитесь, но МНОГО. Так проще для бизнеса: 👉 можно делать больше экспериментов 👉 не надо ждать когда разработчики сделают все варианты UI для экспериментов 👉 BDUI позволяет не ждать прохождение модерации магазина 👉 Элементы управления нативные а не как будет с Web Подробнее про BDUI подход в статье(6м) #android #bdui #sdui

Как много приложений уже активно используют или переходят на BDUI?v
Как много приложений уже активно используют или переходят на BDUI?v

🚀 Знаете ли вы, что 30 минут работы стоя в день улучшают кровообращение и снижают нагрузку на позвоночник? Теперь внедрить п
+1
🚀 Знаете ли вы, что 30 минут работы стоя в день улучшают кровообращение и снижают нагрузку на позвоночник? Теперь внедрить привычку в рутину стало проще! Компания Ergostol представляет новинку — умный стол DeskUp, который помогает заботиться о здоровье маленькими, но эффективными шагами: ✅ Плавно меняйте высоту (73–118 см) одним нажатием кнопки ✅ Чередуйте сидячие и стоячие позы во время работы, звонков или творчества ✅ Устали на созвоне? Опустите столешницу за секунды — сигнал, что пора завершать встречу! Большие результаты начинаются с маленьких решений: ▸ Начните с 10 минут стоя во время утренней рутины ▸ Добавьте 1 видеозвонок без стула ▸ Используйте 3 предустановки высоты на пульте, чтобы не отвлекаться на настройки. 🎁 Начните свой путь к здоровью со скидкой по промокоду ANDROID10 👉 Стол DeskUp и другие новинки по ссылке Реклама. ООО «СОФТЭФФЕКТ». ИНН 7735575262

🐘 Gradle начиная с версии 8.0. обязательно требует зависимостей между task, если один использует результаты другого Явное объявление зависимостей требуется чтобы корректно выстроить порядок выполнения task-ок, гарантировать воспроизводимость сборки. #gradle

🏝 Проблемы с порядком Gradle Task при использовании KSP 2.0.2 Продолжаю разработку проекта FrameIO - Kotlin Multiplatform клиента для сервиса frame.io и стоклнулся с падением сборки из-за порядка задач (ниже стек с примером проблемы):
Some problems were found with the configuration of task ':module:kspDebugKotlinAndroid' (type 'KspAATask').
  - Gradle detected a problem with the following location: './module'.
    
    Reason: Task ':module:kspDebugKotlinAndroid' uses this output of task ':module:javaPreCompileDebug' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed.
    
    Possible solutions:
      1. Declare task ':module:javaPreCompileDebug' as an input of ':module:kspDebugKotlinAndroid'.
      2. Declare an explicit dependency on ':module:javaPreCompileDebug' from ':module:kspDebugKotlinAndroid' using Task#dependsOn.
      3. Declare an explicit dependency on ':core:user-session:javaPreCompileDebug' from ':module:kspDebugKotlinAndroid' using Task#mustRunAfter.
    
    For more information, please refer to https://docs.gradle.org/8.14.2/userguide/validation_problems.html#implicit_dependency in the Gradle documentation.
Стек для сборки: Gradle 8.14.2, Kotlin 2.2.0, KSP 2.2.0-2.0.2, AGP 8.11.0 Решения проблемы пока нету в KSP (одно из issue), поэтому я задаю порядок Gradle Task сам:
// build.gradle.kts модуля где подключен ksp
afterEvaluate {
    android.libraryVariants.forEach { variant ->
        val variantCapitalized = variant.name.capitalized()
        tasks.named("ksp${variantCapitalized}KotlinAndroid") {
            dependsOn(
                "${variant.name}AssetsCopyForAGP",
                "process${variantCapitalized}Manifest",
                "write${variantCapitalized}AarMetadata",
                "javaPreCompile${variantCapitalized}",
                "merge${variantCapitalized}Assets",
                "merge${variantCapitalized}JniLibFolders",
                "merge${variantCapitalized}NativeLibs",
                "copy${variantCapitalized}JniLibsProjectOnly",
                "generate${variantCapitalized}EmptyResourceFiles",
                "copy${variantCapitalized}JniLibsProjectAndLocalJars",
                "prepare${variantCapitalized}ArtProfile",
                "write${variantCapitalized}LintModelMetadata",
                "extractProguardFiles",
                "prepareLintJarForPublish",
            )
        }
    }
}
#android #kmp #koltin #ksp

📹 Embedded Layout Inspector (EN,6м) Демонстрация возможностей встроенного в Android Studio инструмента Layout Inspector для дебага Compose UI 0:00 - Что за инструмент 1:31 - Как дебажить 5:26 - Итоги #compose #androidstudio

Подборка ТОП AI инструментов в разных сферах
Подборка ТОП AI инструментов в разных сферах

@mobile_reviews_bot - Telegram бот для отслеживания отзывов на приложение в Google Play и App Store. Отвечать можно прямо из
+1
@mobile_reviews_bot - Telegram бот для отслеживания отзывов на приложение в Google Play и App Store. Отвечать можно прямо из бота + есть ИИ для генерации ответов Подробности на сайте #googleplay #appstore

Используете библиотеку Jetpack App Search?
Anonymous voting

🚀 Вышел стабильный JavaScript движок от Google для Android Новая стабильная библиотека Jetpack JavaScript Engine позволит разработчикам выполнять JS код в изолированной и ограниченной среде.
class MainActivity : ComponentActivity() {

    // Теперь nullable, без lateinit
    private var jsSandbox: JavaScriptSandbox? = null
    private var jsIsolate: JavaScriptIsolate? = null

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        if (!JavaScriptSandbox.isSupported()) {
            Log.e("JS", "JavaScriptSandbox не поддерживается")
            return
        }

        lifecycleScope.launch {
            // Создаём и сохраняем в nullable-поле
            jsSandbox = JavaScriptSandbox
                .createConnectedInstanceAsync(applicationContext)
                .await()
            jsIsolate = jsSandbox?.createIsolate()

            val script = """
                function sum(a, b) {
                  return (a + b).toString();
                };
                sum(3, 4);
            """.trimIndent()

            // При выполнении гарантируем, что jsIsolate != null
            val result: String = jsIsolate
                ?.evaluateJavaScriptAsync(script)
                ?.await()
                ?: "Ошибка: isolate не инициализирован"

            Log.d("JS", "Результат выполнения: $result")
        }
    }

    override fun onDestroy() {
        super.onDestroy()
        // Закрываем только если не null
        jsIsolate?.close()
        jsSandbox?.close()
    }
}
#jetpack #js

Очередной достижение на YouTube. За лет 5 лет ведение YouTube это не так много, но больше только впереди
Очередной достижение на YouTube. За лет 5 лет ведение YouTube это не так много, но больше только впереди

📚 Must-read для разработчиков: книги, которые прокачают ваш код и мышление Если вы хотите писать не просто рабочий, а чистый
📚 Must-read для разработчиков: книги, которые прокачают ваш код и мышление Если вы хотите писать не просто рабочий, а чистый, масштабируемый и профессиональный код, сохраните себе эту подборку. 1️⃣ «Чистый код» Для: Junior+/Middle, кто хочет избавиться от неидеального кода. Фишка: учимся именовать переменные, рефакторить и работать с legacy так, чтобы коллеги не проклинали вас в чатиках. 2️⃣ «Идеальный программист» Для: всех, кто хочет прокачать и код, и профессиональное мышление. Фишка: про ответственность, дисциплину и почему «работает» ≠ «норм». 3️⃣ «Чистая архитектура» Для: Middle+/Senior, кто проектирует системы. Фишка: SOLID, Dependency Rule и как сделать архитектуру, которая не развалится через полгода. 4️⃣ «Head First. Архитектура ПО» Для: тех, кто любит объяснения без скуки. Фишка: интерактивный формат, картинки и «разжёвано» для новичков в теме. 🔥 По промокоду BROADCAST -25% на книги в издательстве Питер Читали что-то из этого? Делитесь впечатлениями в комментариях! #реклама

🤖 Strict-режим Android Resource Shrinker — аккуратнее, он без компромиссов В Android можно включить resource shrinking, чтобы убрать из финального APK/Bundlа неиспользуемые ресурсы (строки, drawables, layouts и т.д.)
android {
    buildTypes {
        release {
            shrinkResources true
            minifyEnabled true
        }
    }
}
С недавних пор Google экспериментирует со strict режимом работы шринкера, который делает эту очистку более агрессивной, а именно: 👉 Удаляет все ресурсы, которые не удалось найти в коде или XML. 👉 Не делает допущений, что ресурс “вдруг используется где-то через reflection”. Нету явного использования или keep правила - удаление 👉 Режет всё под корень — даже если вы явно используете getIdentifier() или динамически загружаете ресурсы по имени, он может их не заметить и выкинуть. 📉 Эффект - меньший размер сборки, но есть риск крешей в рантайме, если ресурсы удалены, а были нужны Как включается strict режим:
# В gradle.properties
android.experimental.enableStrictResourceShrinking=true
🛡 Как сохранить нужные ресурсы от удаления? Если вы точно знаете, что ресурс используется, но shrinker может его не заметить: 1️⃣ProGuard правила (R8 учитывает их для ресурсов тоже):
# Правила для R8
-keepresources R.string.some_dynamic_string
-keepresources R.drawable.icon_loaded_by_name
2️⃣Файлы в папках res/raw/ и assets/ shrinker не трогает вообще. 3️⃣tools:keep и tools:discard в XML (подробнее тут):
<resources xmlns:tools="http://schemas.android.com/tools"
    tools:keep="@layout/landing,@drawable/logo"
    tools:discard="@drawable/unused_image" />
Рекомендации: 👉 Не включайте strict-режим без хорошего UI-тест-покрытия. 👉 Проверьте, что не используете динамическое получение ресурсов getIdentifier() без крайней необходимости. 👉 Добавляйте -keepresources, если есть малейшие сомнения. Подробнее про оптимизацию ресурсов читайте в официальной документации #android #r8 #оптимизация

‼️ Следите за правила для минификации кода R8 - такой вывод стоит сделать из доклада Из-за того что одна команда добавила правило, это сильно затормозило весь этап работы R8 🤯
# The proguard configuration file for the following section is
/builds/../feature-1.0.0/proguard.txt

-if class ru.tinkoff.feature.**.*$Companion {
    kotlinx.serialization.KSerializer serializer(...);
}
-keep,includedescriptorclasses class ru.tinkoff.feature.**$$serializer { *; }

# End of content from /builds/../feature-1.0.0/proguard.txt

📹 Как мы случайно ускорили релизную сборку в два раза. Роман Заремба, Юрий Анисимов из Т-Банк, Mobius 2025 Весна Спикеры рассказали о том, как боролись за ускорение релизной сборки в мобильном банке и что из этого в итоге получилось. Разобрали особенности релизной сборки, связанные с подрезкой (shrinking) кода и ресурсов. Посмотрели, как профилировать и анализировать работу R8, а также отдельных Gradle-тасок, участвующих в подготовке релизной версии приложения. Доклад для практикующих Андроид-инженеров с элементами хардкора. 🔗 Подробнее о конференции Mobius 🔗 Скачать презентацию #android #mobius #gradle

Меняете работу приложения в зависимости от состояния/возможностей устройства?
Anonymous voting

🐱 Droidex - Android библиотека для определения уровня производительности устройства на основе характеристик и состояния: процессора, памяти, размера heap, скорости доступа в сеть, свободного хранилища, заряда батаерии и прочих настроек на устройстве.
DroidDex.getPerformanceLevelLd(PerformanceClass.CPU, PerformanceClass.MEMORY)
    .observe(lifecycleOwner) { level: PerformanceLevel ->
        when(level) {
            EXCELLENT -> // Флагманский уровень
            HIGH -> // Довольно сильное устройство, но не самое мощное
            AVERAGE -> // Средняя производительность/возможности
            LOW -> // Бюджетный телефон/низкая производительность
            UNKNOWN -> // Не смогли понять ничего
        }
     }
Больше подробностей в статье или вот ссылка #android #производительность

📹 Code Review примера от Google "Now in Android" (1.5 часа) Делаю ревью кода проекта примера от Google - "Now in Android". Весь стек технологий от Google, Compose и адаптивная верстка UI #AndroidBroadcast #codereview

Сегодня буду пару часов на Сезон Кода в Минске
Сегодня буду пару часов на Сезон Кода в Минске

📹 Эти фичи изменят разработку на Kotlin (15 мин) Прошла Kotlin Conf и в рамках keynote показали 3 фичи: 🏝 улучшение destructing declaration 🏝 обязательное использование возвращаемых значений для всех методов 🏝 улучшение работы с ошибками (не с exception, именно ошибками логики) Версия на 📹 VK Video и 📺 RuTube #AndroidBroadcast #kotlin #kotlinconf25