Android12 录屏时代码设置不显示屏幕上录屏应用的悬浮窗
时间: 2023-08-07 19:05:00 浏览: 241
在 Android 12 中,系统默认禁用了在录屏时显示录屏应用悬浮窗的功能,这是为了保护用户的隐私。如果您想要在录屏时不显示录屏应用的悬浮窗,可以在您的应用中添加以下代码:
```java
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
getWindow().setExcludeFromRecents(true);
}
```
这段代码将防止您的应用出现在最近使用的应用列表中,从而不会在录屏时被系统捕获到。但是请注意,您需要在 Manifest 文件中添加以下权限:
```xml
<uses-permission android:name="android.permission.REORDER_TASKS" />
```
这将允许您的应用重新排列任务列表。同时,也要注意用户隐私,不要滥用此功能。
相关问题
Android12 录屏时代码设置不显示屏幕上悬浮窗
在 Android12 中,如果你想在录屏时不显示屏幕上的悬浮窗,可以在代码中设置隐藏悬浮窗的选项。可以通过以下代码实现:
```
MediaProjection mediaProjection =
mediaProjectionManager.getMediaProjection(activityResultCode, data);
MediaProjection.Callback callback = new MediaProjection.Callback() {
@Override
public void onStop() {
// Stop handling the screen capture
}
};
mediaProjection.createVirtualDisplay("ScreenCapture",
width, height, dpi,
DisplayManager.VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR,
mediaCodecSurface, null /* handler */, callback);
```
其中,`VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR` 参数可以隐藏屏幕上的悬浮窗。
Android11 录屏时代码设置不显示屏幕上悬浮窗
在 Android 11 中,系统默认禁用了在录屏时显示悬浮窗的功能,这是为了保护用户的隐私。如果您想要在录屏时显示悬浮窗,可以在您的应用中添加以下代码:
```java
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
getWindow().setDecorFitsSystemWindows(false);
}
```
这段代码将防止您的应用在进入全屏模式时隐藏状态栏和导航栏。这样,当您的应用在录屏时显示悬浮窗时,它将始终处于全屏模式,悬浮窗也将显示在屏幕上。但是请注意,您需要在 Manifest 文件中添加以下权限:
```xml
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
```
这将允许您的应用显示系统级悬浮窗。同时,也要注意用户隐私,不要滥用悬浮窗功能。
阅读全文