Android 13 在未录屏的情况下,假设我手指已经放在屏幕上了,那么使用adb shell input x y之后,手指那个触点便会直接断触。 奇怪的是,如果在录屏的情况下,使用adb shell input 那么手指那个触点会莫名其妙的往左下角移动,再断触,到底是什么原因造成的呢。 同时我的应用程序需要未录屏情况下那种现象,该如何使录屏时候也能和未录屏时一样呢?
时间: 2023-03-02 21:43:16 浏览: 67
在未录屏的情况下,使用adb shell input命令模拟手指触摸屏幕时,触点会直接断触,这是正常的行为。但是在录屏的情况下,由于录屏软件本身也需要获取触摸事件,使用adb shell input命令时可能会和录屏软件产生冲突,导致触点位置偏移,出现莫名其妙的情况。
如果你的应用程序需要未录屏情况下的触摸效果,你可以尝试使用其他方式模拟触摸事件,例如使用第三方的模拟触摸工具或编写脚本,以达到相同的效果。或者你也可以尝试禁用录屏软件的触摸事件捕获功能,具体方法可以查看录屏软件的使用说明。
总之,要想在录屏时实现和未录屏时相同的触摸效果,需要找到不会和录屏软件产生冲突的方式进行模拟触摸事件。
相关问题
Android12 录屏时代码设置不显示屏幕上录屏应用的悬浮窗
在 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" />
```
这将允许您的应用重新排列任务列表。同时,也要注意用户隐私,不要滥用此功能。
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" />
```
这将允许您的应用显示系统级悬浮窗。同时,也要注意用户隐私,不要滥用悬浮窗功能。