모바일 플랫폼 출시 Android 17

구글이 오픈 모바일 플랫폼을 출시했습니다. Android 17. Связанные с новым выпуском исходные тексты размещены в Git-репозитории проекта (ветка android-17.0.0_r1). Сборки прошивки подготовлены для устройств Pixel 6/6a/6 Pro, Pixel 7/7a/7 Pro, Pixel 8/8a/8 Pro, Pixel 9/9a/9 Pro/9 Pro XL/9 Pro Fold, Pixel 10/10 Pro/10 Pro XL/10 Pro Fold, Pixel Fold и Pixel Tablet. Предварительные сборки прошивок доступны для устройств HONOR, iQOO, Lenovo, OnePlus, OPPO, realme, Sharp, vivo и Xiaomi. В процессе формирования универсальные сборки GSI (Generic System Images), подходящие для разных устройств на базе архитектур ARM64 и x86_64.

Среди изменений (1, 2, 3):

  • 새로운 멀티 윈도우 모드인 "버블"이 추가되었습니다. 이 모드를 사용하면 메시지 전송 시 표시되는 오버레이 알림("버블")과 유사하게, 특정 API에 종속되지 않고 모든 애플리케이션을 플로팅 창으로 실행할 수 있습니다. 애플리케이션 아이콘을 길게 누르면 플로팅 창에서 애플리케이션이 열립니다. 화면이 큰 경우, 플로팅 창 아이콘은 작업 표시줄의 별도 영역에 나타납니다. 이러한 창들은 그룹화, 이동 및 화면에 고정할 수 있습니다.

  • 태블릿, 노트북, 데스크톱 시스템, 폴더블 스마트폰 등 대형 화면 기기용 플랫폼 개발이 계속 진행되었습니다. 화면 너비가 600픽셀(dp)을 초과하는 기기에서 새로운 동작을 비활성화하는 옵션이 제거되었습니다. 이 동작은 화면 크기 조정 및 방향(screenOrientation, resizeableActivity, [min|max]AspectRatio) 관리를 위한 특정 API를 무시하고, 크기 조정 및 이동이 가능한 창에서 애플리케이션의 적응형 배치를 지원하는 것과 관련이 있었습니다.

  • EyeDropper 시스템 API가 추가되어 애플리케이션이 화면 캡처 권한 없이도 화면의 모든 픽셀에 대한 색상 정보를 얻을 수 있게 되었습니다. 보안은 사용자가 플랫폼에서 관리하는 스포이드 인터페이스를 통해 색상 정보를 캡처할 영역을 선택할 수 있도록 함으로써 보장됩니다. 이 인터페이스는 애플리케이션의 제어 범위 밖에 있으므로 애플리케이션은 특정 픽셀에 대한 정보를 요청하거나 화면 콘텐츠를 픽셀 단위로 재구성할 수 없습니다.

  • Добавлен системный интерфейс выбора контакта из адресной книги, доступ к которому предоставляется при получении полномочия ACTION_PICK_CONTACTS. Интерфейс позволяет обойтись без предоставления полномочия READ_CONTACTS, позволяющего прочитать все контактные данные. При вызове нового интерфейса пользователь принимает решение о том, какую именно информацию из адресной книги передать приложению с возможностью выбора только отдельных полей.

  • PhotoPickerUiCustomizationParams API가 추가되어 사진 선택기 인터페이스를 사용자 지정하고 호출하는 앱의 스타일과 더 잘 맞출 수 있습니다. 예를 들어 사진 썸네일의 가로세로 비율을 1:1(정사각형)에서 9:16(세로)로 변경할 수 있습니다.

  • USE_LOCATION_BUTTON 권한이 추가되었습니다. 이 권한을 사용하면 앱 인터페이스에 시스템 버튼을 삽입하여 정확한 위치 데이터에 대한 접근 권한을 부여할 수 있습니다. 이 버튼은 시스템에서 렌더링되며, 사용자가 클릭하면 현재 세션 동안에만 위치 데이터에 대한 접근 권한이 부여됩니다.

  • 앱 아이콘 아래에 앱 이름이 표시되지 않도록 하는 설정이 추가되었습니다.
  • 화면 녹화 툴바 디자인이 변경되었습니다.

  • Добавлена поддержка экранных реакций (Screen Reactions), совмещающих запись видео с передней камеры с созданием скринкаста для наложения своих комментариев к действиям на экране.


  • Добавлен режим для игр на устройствах со складными экранами, при котором одна половина раскладного экрана используется для отображения игрового процесса, а другая для виртуального геймпада.

  • Handoff API가 추가되어 애플리케이션의 상태를 근처의 다른 애플리케이션으로 전송할 수 있게 되었습니다. Android-기기(예: 태블릿)에 접속하여 작업을 계속하십시오.

  • 기존의 화면 속 화면(Picture-in-Picture) 창과는 달리, 데스크톱 모드에서 다른 애플리케이션 위에 도킹된 상태에서도 상호 작용이 가능한 대화형 도킹 창을 구현했습니다.
  • 두 가지 새로운 API가 추가되었습니다. 하나는 실내 내비게이션을 위해 Wi-Fi를 사용하여 건물 내부에서 기기의 위치를 ​​​​파악하는 UWB DL-TDOA API이고, 다른 하나는 Wi-Fi를 통해 주변 기기를 감지하는 근접 감지 API입니다.
  • MPEG(ISO/IEC JTC 1) 및 VCEG(ITU-T) 워킹 그룹이 Apple, Ericsson, Intel, Huawei, Microsoft, Qualcomm, Sony 등의 기업 참여 하에 공동 개발한 H.266 비디오 압축 표준인 VVC(Versatile Video Coding) 비디오 포맷에 대한 지원이 추가되었습니다. H.266은 H.265(HEVC)를 대체하며 모든 화면 해상도(SD, HD, 4K, 8K)에서 고효율 전송 및 저장을 제공하고 HDR(High Dynamic Range) 비디오와 360도 파노라마 비디오를 지원합니다.
  • 일정한 화질로 비디오를 녹화하는 기능이 추가되었습니다. 이 모드는 MediaRecorder 객체의 setVideoEncodingQuality() 메서드를 사용하여 설정할 수 있으며, 비트 전송률과 관계없이 화질 수준을 고정할 수 있습니다.
  • Добавлена поддержка формата изображений RAW14, применяемого в профессиональных цифровых камерах и обеспечивающего хранение 15 бит на цветовой канал.
  • Добавлено поддержка формата HDR-видео Eclipsa Video.
  • HE-AAC(고효율 고급 오디오 코딩) 오디오 포맷용 소프트웨어 인코더가 추가되었으며, 저비트레이트와 고비트레이트를 모두 지원합니다.
  • 새로운 권한인 ACCESS_LOCAL_NETWORK가 추가되어 앱의 로컬 네트워크 접근을 제한합니다. 이 권한을 통해 앱은 스마트 홈 기기 및 멀티미디어 시스템과 같은 로컬 네트워크상의 기기를 식별하고 연결할 수 있습니다. 이 권한은 악성 앱이 로컬 네트워크 리소스를 스캔하여 사용자의 환경을 은밀하게 파악하는 것을 방지하기 위해 추가되었습니다.
  • SMS로 전송되는 일회용 비밀번호(OTP) 및 확인 코드의 가로채기 방지 기능이 강화되었습니다. 이제 대부분의 앱은 이러한 메시지를 수신한 후 3시간이 지나야 직접 접근할 수 있습니다. 기본 SMS 리더는 이러한 메시지를 즉시 표시합니다.
  • Реализована защита от звонков мошенников, представляющихся сотрудниками банка. Платформа может взаимодействовать с установленными банковскими приложениями для подтверждения того, что звонок инициирован банком. Также банки могут определять номера телефонов на которых допускаются только входящие звонки.
  • Добавлена возможность предоставления приложениям временного доступа к данным о точном местоположении, действующего только в течение текущего сеанса работы с программой.
  • Механизм защиты динамической загрузки кода (DCL, Dynamic Code Loading) расширен для применения с нативными библиотеками, загружаемыми через метод System.load(), а не только
    файлами в форматах DEX и JAR. DCL позволяет избежать подстановки вредоносного кода в динамически загружаемые исполняемые файлы, благодаря выставлению для подобных файлов прав доступа, допускающих только чтение.
  • 인증서 투명성 메커니즘은 기본적으로 활성화되어 있으며, 발급 및 해지된 모든 인증서에 대한 공개 로그를 유지합니다.
  • 기존 알고리즘과 양자 컴퓨터에서 무차별 대입 공격에 강한 ML-DSA 알고리즘을 결합한 하이브리드 알고리즘을 기반으로 디지털 서명을 사용하여 APK 패키지를 인증하는 기능이 도입되었습니다.
  • Для приложений, работающих в фоновом режиме, ограничен доступ к API для воспроизведения звука, подключения к звуковым устройствам и изменения громкости. Подразумевается, что только активные приложения, с которыми в данный момент взаимодействует пользователь, могут начинать воспроизведение и менять громкость.
  • 공개 키 암호화의 간편한 키 전송 방식과 대칭 암호화의 고성능을 결합한 HPKE(하이브리드 공개 키 암호화, RFC 9180) 메커니즘 기반의 하이브리드 암호화 지원이 추가되었습니다(데이터는 빠른 대칭 키로 암호화되고, 키 자체는 느린 비대칭 키로 암호화됩니다).
  • При вводе паролей и PIN-кодов при помощи физической клавиатуры по умолчанию отключено отображение последнего введённого символа по мере набора.
  • 게임에서 터치패드 지원 구현을 간소화하기 위해 마우스와 터치패드 이벤트 처리가 통합되었습니다. 이제 포인터 이동 및 스크롤 제스처와 관련된 터치패드 이벤트는 기본적으로 마우스와 마찬가지로 상대 좌표로 변환됩니다. 절대 좌표를 사용하려면 POINTER_CAPTURE_MODE_ABSOLUTE 모드를 명시적으로 지정해야 합니다.
  • ChooserSession 객체에 getInitialRestingBounds() 메서드가 추가되었습니다. 이 메서드를 사용하면 애니메이션이 중지되고 데이터가 로드된 후 선택기 대화 상자의 최종 위치와 크기를 확인할 수 있습니다.
  • 스트리밍 품질 수준 선택을 위해 통신 채널의 최대 대역폭을 확인하는 getStreamingAppMaxDownlinkKbps 및 getStreamingAppMaxUplinkKbps 메서드를 추가했습니다.
  • 하드웨어 제조업체들이 슈퍼 해상도 디테일 향상 엔진, 노이즈 감소 모드, AI 기반 화질 최적화 기능 등 애플리케이션별 기능을 구현할 수 있도록 카메라 확장 기능을 개발할 수 있는 API가 제공되었습니다.
  • 카메라 유형(내장 카메라, USB 웹캠 또는 가상 카메라)에 대한 정보를 가져오는 API가 추가되었습니다.
  • 블루투스 저에너지(BLE)를 통해 연결되는 보청기에 대한 지원이 추가되었습니다. 이제 이러한 장치는 새로운 TYPE_BLE_HEARING_AID 카테고리로 분류되어 앱에서 보청기와 헤드폰을 구분하고 시스템 사운드 재생을 별도로 제어할 수 있습니다(예: 알림, 벨소리 및 알람을 보청기가 아닌 휴대폰 내장 스피커로 재생할 수 있습니다).
  • 물리 키보드와 터치스크린에 입력한 비밀번호를 표시하는 설정을 별도로 구성할 수 있게 되었습니다. 기본적으로 물리 키보드를 사용하여 입력한 비밀번호 문자는 즉시 숨겨집니다.
  • 화면 배율 조정 시 DPI 차이를 고려하여 외부 화면에서 앱 위젯의 표시를 개선했습니다.
  • ACTION_VPN_APP_EXCLUSION_SETTINGS 요청을 추가했습니다. 이 요청을 사용하면 애플리케이션이 VPN 터널을 우회하여 네트워크에 액세스할 수 있도록 허용하는 설정이 있는 시스템 화면을 열 수 있습니다.
  • OpenJDK 25 언어 기능 및 Java 클래스에 대한 지원이 추가되었습니다.
  • 카메라 API 기능이 확장되었습니다. CameraCaptureSession 객체에 updateOutputConfigurations() 메서드가 추가되어 전체 카메라 캡처 세션을 재구성하지 않고도 출력 영역을 즉시 연결하거나 분리할 수 있습니다. 이 변경 사항을 통해 다양한 카메라 모드(예: 비디오 녹화와 사진 촬영) 간의 원활한 전환이 가능해졌습니다. 여러 물리적 센서에 걸쳐 있는 논리 카메라를 사용할 때 기본 센서뿐만 아니라 각 센서의 메타데이터를 검색할 수 있는 기능이 추가되었습니다.
  • `android:usesCleartextTraffic` 속성은 애플리케이션이 "http://" 요청과 같은 암호화되지 않은 트래픽을 전송할 수 있도록 허용했지만, 더 이상 사용되지 않습니다. 암호화되지 않은 트래픽이 필요한 경우 별도의 보안 구성 파일을 사용해야 합니다.
  • VoIP 통화 기록 관리 설정이 추가되어 통화 기록 저장 여부와 통화 완료 정보 표시 여부를 제어할 수 있습니다.
  • Wi-Fi RTT(왕복 시간) API가 확장되어 액세스 포인트에 대한 지속적인 근접도 추정 및 안전한 P2P 노드 감지 기능을 제공합니다.
  • CompanionDeviceManager에 의료 기기 및 피트니스 트래커와의 권한 요청 및 앱 상호 작용 활성화를 위한 새로운 프로필이 추가되었습니다.
  • В Android Runtime (ART) реализован поколенческий сборщик мусора (Generational Concurrent Mark-Compact Garbage Collector), использующий раздельную обработку «старых» и «молодых» объектов, что повышает эффективность очистки недавно созданных объектов с небольшим временем жизни. Применение поколенческого сборщика мусора уменьшает риск приостановок во время выделения ресурсов и снижает нагрузку на CPU, что повышает эффективность потребления энергии.
  • Реализовано ограничение на максимальный объём оперативной памяти, которое может занимать приложение. При превышении лимита, вычисляемого на основе имеющегося в устройстве ОЗУ, приложение принудительно завершается. Для сокращения размера потребляемой памяти предложен R8 Optimizer, упаковывающий имена классов, методов и полей, а также удаляющий неиспользуемый код и ресурсы.
  • При сборке ядра Linux включена оптимизация AutoFDO (Auto-Feedback-Directed Optimization), использующая результаты профилирования c информацией о частоте выполнения различных участков кода для повышения производительности часто выполняемых операций. В проведённых тестах включение AutoFDO для ядра привело к сокращению времени загрузки на 2.1%, ускорению первого запуска программ на 4.3%, повышению эффективности системных вызовов на 9.3%, сокращению времени выполнения mmap-транзакций Binder на 12.3%, HwBinder на 20% и Binder RPC на 21.7%.
  • 락(lock) 없이 작동하는 새로운 android.os.MessageQueue 메시지 큐 구현을 제안합니다. 이 새로운 구현은 성능을 향상시키고 프레임 손실을 줄입니다.
  • Приложениям, заявляющим о поддержке Android 17 и более новых выпусков, запрещено изменять значения полей, помеченных как «static final», что позволяет задействовать более агрессивные оптимизации производительности в runtime.
  • 메모리 사용량을 줄이기 위해 사용자 지정 알림 보기 레이아웃의 크기가 제한되었습니다.
  • 성능 문제 디버깅에 유용한 데이터를 수집하기 위해 ProfilingManager 프로파일러에 TRIGGER_TYPE_COLD_START, TRIGGER_TYPE_OOM 및 TRIGGER_TYPE_KILL_EXCESSIVE_CPU_USAGE 트리거가 추가되었습니다.

출처 : opennet.ru

DDoS 보호, VPS VDS 서버가 있는 사이트를 위한 안정적인 호스팅 구입 🔥 DDoS 공격 방지 기능이 탑재된 안정적인 웹사이트 호스팅, VPS 및 VDS 서버를 구매하세요 | ProHoster