Начиная с 27 марта 2025 г. мы рекомендуем использовать android-latest-release
вместо aosp-main
для создания и участия в AOSP. Дополнительные сведения см. в разделе Изменения в AOSP .
Ограниченное чтение с экрана
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
В Android 9 и более ранних версиях разрешения на захват буфера экрана ( READ_FRAME_BUFFER
, CAPTURE_VIDEO_OUTPUT
и CAPTURE_SECURE_VIDEO_OUTPUT
) предоставлялись приложениям, имеющим либо подписи, либо привилегированные разрешения. Это позволило осуществлять беспрепятственный захват экранного буфера, например создание снимков экрана или запись содержимого экрана устройства.
Начиная с Android 10, чтобы предотвратить бесшумный доступ к содержимому экрана устройства, разрешения на захват видео не предоставляются привилегированным приложениям. Доступ без согласия пользователя ограничен и предоставляется только приложениям, имеющим разрешение на подпись. Это требование распространяется на производителей устройств, запускающих привилегированные приложения, использующие эту функцию бесшумного захвата.
Начиная с Android 10, если у вас нет перечисленных разрешений для подписи захвата экранного буфера, ваше приложение не сможет захватывать экранные буферы без согласия пользователя. Чтобы убедиться, что у вас есть необходимые разрешения, найдите в файле манифеста ранее перечисленные разрешения для подписи. Перенесите все затронутые привилегированные приложения (найденные в вашем поиске) в класс MediaProjectionManager , который позволяет любому стороннему приложению захватывать экранные буферы без разрешений, но с согласия пользователя. Этот поток отображает диалоговое окно, предлагающее пользователю разрешить захват экрана, когда приложение инициирует его. В Android 10 новые функции диалогового окна включают следующее:
- Обеспечивает более заметные ассоциации со значком трансляции .
- Предоставляет дополнительную информацию о конфиденциальности данных, к которым можно получить доступ.
- Не позволяет пользователям скрывать диалоговое окно при будущих запусках: диалоговое окно отображается каждый раз.
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-29 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-07-29 UTC."],[],[],null,["# Restricted screen reading\n\nIn Android 9 and lower, the screen buffer\ncapture permissions (`READ_FRAME_BUFFER`,\n`CAPTURE_VIDEO_OUTPUT`, and\n`CAPTURE_SECURE_VIDEO_OUTPUT`) were granted to apps that\nhad *either* signature or privileged permissions. This\nenabled seamless screen-buffer capturing activities, such as\ntaking screenshots, or recording a device's screen contents.\n\nStarting in Android 10, to prevent\nsilent access to a device's screen contents, video capture\npermissions aren't granted to privileged apps. Access\nwithout user consent is [restricted](https://developer.android.com/about/versions/11/privacy/permissions),\nand granted only to apps that have signature\npermissions. Device manufacturers that run privileged apps relying\non this silent capture functionality are affected by this\nrequirement.\n\nAs of Android 10 if you\ndon't have the listed screen-buffer capture signature permissions, your\napp can't capture screen buffers without user consent. To\nensure you have the permissions you need, search your manifest file\nfor the previously listed signature permissions. Migrate all affected privileged\napps (as found in your search) to the [MediaProjectionManager](https://developer.android.com/reference/android/media/projection/MediaProjectionManager)\nclass, which allows any third party app\nto capture screen buffers without permissions, but with user\nconsent. This flow displays a dialog that prompts the user to\nallow screen capturing when an app initiates it. In Android 10,\nnew features of the dialog include the following:\n\n- Provides more visible associations with the **Cast** icon.\n- Provides more information about the sensitivity of the data that can be accessed.\n- Prevents users from hiding the dialog on future initiations: the dialog shows every time."]]