TGTGInsighttelegram intelligenceLIVE / telegram public index
Retour aux chaînes
Android Broadcast avatar

TGINSIGHT CHAT

Android Broadcast

@android_broadcast

Technologies

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

Abonnés1.4万Abonnés actuels de la chaîne
Posts indexés1,000Nombre de posts indexés
Portée récente77,310Somme des vues récentes
Posts récents

Posts récents

Tag : #android16 · 56 posts

当前筛选 #android16清除筛选

🤖Новая защита от Intent Redirect в Android 16 Начиная с Android 16, система получила усиленную защиту от атак с редиректом Intent – механизма, с помощью которого злоумышленники могли подменять содержимое Intent для запуска приватных компонентов. Благодаря обновлению: 🔒 Защита по умолчанию: Система автоматически проверяет входящие Intent, снижая риск выполнения недоверенных операций. 🛠 Минимальные изменения для разработчиков: Большинство приложений, использующих стандартный механизм Intent, продолжат работать без проблем, однако рекомендуется протестировать проекты в новых условиях. 💡 Повышенная безопасность: Новые меры помогают предотвратить несанкционированный доступ к данным и выполнение привилегированных действий. #android#android16#безопасность

7,630 views

🤖 Шаринг ключей из Android Keystore с другими приложениями В Android 16 KeyStoreManager получил возможность поделиться ключами с другими приложениями на устройстве пользователя fun generateAndShareKey(targetUid: Int) { // Генерация нового ключа в Android Keystore val keyGenerator = KeyGenerator.getInstance(KeyProperties.KEY_ALGORITHM_AES, "AndroidKeyStore") val keyGenSpec = KeyGenParameterSpec.Builder( KEY_ALIAS, KeyProperties.PURPOSE_ENCRYPT or KeyProperties.PURPOSE_DECRYPT ) .setBlockModes(KeyProperties.BLOCK_MODE_GCM) .setEncryptionPaddings(KeyProperties.ENCRYPTION_PADDING_NONE) .build() keyGenerator.init(keyGenSpec) val secretKey: SecretKey = keyGenerator.generateKey() // Предоставление доступа к ключу приложению с заданным UID val keyStoreManager = KeyStoreManager.getInstance() val granted = keyStoreManager.grant(KEY_ALIAS, targetUid) if (granted) { Log.d(TAG, "Доступ предоставлен UID: $targetUid") } else { Log.e(TAG, "Не удалось предоставить доступ UID: $targetUid") } } Пример отзыва доступа к ключу fun revokeKeyAccess(targetUid: Int) { // Отзыв доступа к ключу для приложения с заданным UID val keyStoreManager = KeyStoreManager.getInstance() val revoked = keyStoreManager.revoke(KEY_ALIAS, targetUid) if (revoked) { Log.d(TAG, "Доступ отозван для UID: $targetUid") } else { Log.e(TAG, "Не удалось отозвать доступ для UID: $targetUid") } } #android#android16#безопасность

6,870 views

В региональных настройках Android 16 пользователь сможет менять метрическую систему Теперь разработчикам в зависимости от настроек рекомендуется форматировать размеры в приложениях, но вот API из коробки для того не дали. #android#android16

5,820 views

🤖Включение Edge-to-edge для всех приложений без возможности выключения В Android 15 есть флаг R.attr#windowOptOutEdgeToEdgeEnforcement, который позволял отключить для приложения "обязательное" включение Edge-to-Edge. В Android 16 флаг помечен как устаревший (deprecated) и система его игнорирует, а значит для вашего приложения включится режим отображения от края до края экрана. #android#android16#edgetoedge

6,170 views

🤖Улучшения поддержки UltraHDR в Android 16 Появилась поддержка UltraHDR в HEIC, также работают на поддержкой в AVIF. Также добавили новые параметры UltraHDR из черновика стандарта ISO 21496-1 #android#android16

5,890 views

🤖Точная настройка цветовой температуры и оттенка в Camera2 В Android 16 появилась поддержка точной настройки цветовой температуры и оттенка для камеры, что особенно полезно для профессиональных видеосъёмочных приложений. Ранее в Android управление балансом белого осуществлялось через CONTROL_AWB_MODE, но выбор ограничивался предустановками (например, “Лампа накаливания”, “Облачно”, “Сумерки”). Теперь новый режим COLOR_CORRECTION_MODE_CCT позволяет использовать параметры COLOR_CORRECTION_COLOR_TEMPERATURE и COLOR_CORRECTION_COLOR_TINT для более точной коррекции баланса белого на основе коррелированной цветовой температуры (CCT). Пример кода: fun setCCT() { val colorTemperatureRange: Range<Int> = mStaticInfo.characteristics[CameraCharacteristics.COLOR_CORRECTION_COLOR_TEMPERATURE_RANGE] // Переключаемся в ручной режим для активации CCT reqBuilder[CaptureRequest.CONTROL_AWB_MODE] = CameraMetadata.CONTROL_AWB_MODE_OFF reqBuilder[CaptureRequest.COLOR_CORRECTION_MODE] = CameraMetadata.COLOR_CORRECTION_MODE_CCT reqBuilder[CaptureRequest.COLOR_CORRECTION_COLOR_TEMPERATURE] = 5000 reqBuilder[CaptureRequest.COLOR_CORRECTION_COLOR_TINT] = 30 val request: CaptureRequest = reqBuilder.build() } Теперь разработчики могут добиваться более точной цветопередачи, что особенно важно для профессиональной видеосъёмки. #android#android16#camera2#камера

5,590 views

⚙️Профессиональные функции Camera2 API. Гибридная автоэкспозиция 🎥✨ В Android 16 добавлены новые режимы гибридной автоэкспозиции (Hybrid AE) в Camera2. Теперь можно вручную управлять отдельными параметрами экспозиции, оставляя остальное на алгоритм автоэкспозиции (AE). Доступны два новых режима: 👉 ISO + AE – вы задаёте ISO, а автоэкспозиция регулирует выдержку. 👉 Выдержка + AE – вы управляете временем экспозиции, а AE настраивает ISO. Это даёт больше гибкости по сравнению с прежним подходом, где нужно было либо полностью полагаться на автоэкспозицию, либо вручную контролировать все параметры. fun setISOPriority() { // ... val availablePriorityModes = mStaticInfo.characteristics.get( CameraCharacteristics.CONTROL_AE_AVAILABLE_PRIORITY_MODES ) // ... // Включение AE режима reqBuilder.set( CaptureRequest.CONTROL_AE_MODE, CameraMetadata.CONTROL_AE_MODE_ON ) reqBuilder.set( CaptureRequest.CONTROL_AE_PRIORITY_MODE, CameraMetadata.CONTROL_AE_PRIORITY_MODE_SENSOR_SENSITIVITY_PRIORITY ) reqBuilder.set( CaptureRequest.SENSOR_SENSITIVITY, TEST_SENSITIVITY_VALUE ) val request: CaptureRequest = reqBuilder.build() // ... } #android#android16#камера#camera2

5,300 views

🤖Появился новый Intent для съёмки Motion Photo val intent = Intent(MediaStore.ACTION_MOTION_PHOTO_CAPTURE) // или MediaStore.ACTION_MOTION_PHOTO_CAPTURE_SECURE // Задаем куда сохранить intent.putExtra(MediaStoreEXTRA_OUTPUT, uri) // или Uri через ClidData intent.setClipData(clipData) context.startActivity(intent) #android16

5,720 views

Hashtags

🤖Вышла вторая Beta Android 16 Вышла вторая из четырёх Beta версий Android 16. Улучшили работу с медиа, новые возможности Camera2 API, форсирование Edge-to-edge и другие. Как всегда расскажу отдельными постами про самые интересные фичи #android16

5,760 views

Hashtags

📺Google заставит разработчиков поддержать планшеты в Android 16 Google снова пытается убедить разработчиков поддерживать UI под большие экраны. Сделал видео где сделал весь обзор попыток Google повысить популярность Android планшетов и почему снова ничего не выйдет. #AndroidBroadcast#android16

8,720 views

🤖В Android 16 для всех приложений по умолчанию включат Predictive Back Gesture Все приложения с targetSdk Android 16 и выше должны поддерживать Predictive Back Gesture (PBG) т.к. его включат по умолчанию. Если вы этого не хотите - можно просто отключить для вашего приложения. При включенном PBG в приложение не будет срабатывать callback Activity.onBackPressed() и отправляться события KeyEvent.KEYCODE_BACK. Для отключения надо добавить в AndroidManifest <application android:enableOnBackInvokedCallback="false" > <!-- Отключение на уровне activity--> <activity android:enableOnBackInvokedCallback="false" /> </application> #android#android16

6,740 views

🤖В Android 16 изменяется поведение ordered broadcast (с заданным приоритетом) Доставка Broadcast Intent на основе приоритетов между процессами больше не гарантируется. Это значит, что приоритеты будут работать только в рамках приложения и его процесса. Приоритеты SYSTEM_LOW_PRIORITY и SYSTEM_HIGH_PRIORITY смогут задавать только системные приложения, а для всех остальных приоритет автоматически будет понижаться/повышаться. #android#android16

7,100 views