奇怪的 Android 模拟器和 Mac 点击灵敏度问题

Mag*_*s W 5 macos android-emulator macos-monterey

我在 macOS Monterey 上使用 Android 模拟器时遇到了一个非常奇怪且令人沮丧的问题。

我在 Macbook Pro(2015 年中 15 英寸)上启用了“点击点击”功能,并且在所有其他应用程序中都运行良好。但不知何故,当模拟器窗口处于活动状态时,它似乎错过了几乎所有其他点击。如果我用力点击它不是点击,而是捕获每次点击。触控板设置中的点击灵敏度设置为“轻”。

因此,模拟器窗口似乎对点击的敏感度低于所有其他应用程序。我什至不知道这是怎么可能的,是否有应用程序特定的点击灵敏度之类的东西?

更重要的是,不仅模拟器窗口本身存在此问题,模拟器设置窗口也存在此问题。如果我点击“启用剪贴板共享”开关,它会错过大约 50% 的点击。如果我用力点击,就会 100% 捕获它们。如果我在其他应用程序中尝试相同的操作(使用“系统偏好设置”窗口进行测试),它会捕获 100% 的点击。

我已经测试了一遍又一遍,以确保我不会对结果产生偏见,但确实存在差异,这让我发疯。我认为它是在更新到蒙特利后出现的,但不能 100% 确定确切的时间相关性。

有任何想法吗??

小智 12

我的问题非常相似,我使用带有苹果鼠标的MAC,所以我可以通过在 Android Emulator Extended Controls上禁用鼠标滚轮来修复它。

Android 模拟器设置

希望有帮助


Ave*_*man 0

我是 Android 模拟器的新手,但在 Ubuntu 中遇到了同样的问题,即使我在操作系统中禁用了点击点击功能。我讨厌点击式操作,因此在我的笔记本电脑上模拟超灵敏触摸 Android 屏幕简直令人沮丧。

查看文档,我发现了该SOURCE_CLASS_POINTER方法,其中指出

输入源是与显示器关联的定点设备。示例:SOURCE_TOUCHSCREEN、SOURCE_MOUSE。MotionEvent 应根据视图层次结构解释为显示单元中的绝对坐标。当手指触摸显示屏或按下/释放选择按钮时,指针向下/向上指示。使用 getMotionRange(int) 查询指点设备的范围。某些设备允许在显示区域之外进行触摸,因此有效范围可能比实际显示尺寸稍小或稍大。

在阅读本文时,我开始相信这实际上可能是默认行为,因为触摸板事件是通过方法解释的SOURCE_TOUCHSCREEN而不是SOURCE_TOUCHPADSOURCE_MOUSE

不幸的是,我没有解决方案,只有解决方法:

我插入鼠标并测试了指针在屏幕上的向上/向下移动,文档的这一部分建议应将其注册为按下。但是,对于鼠标,它仅响应点击。所以它向我表明它确实被正确地解释为SOURCE_MOUSE受控指针而不是SOURCE_TOUCHSCREEN受控指针。

因此,除非我们能够找到如何让 AVD 正确地将触摸板解释为触摸板,而不是触摸屏,否则使用鼠标似乎是最好的解决方案。

作为参考,我将此链接包含在 AVD 手册中: https: //developer.android.com/studio/run/emulator

更新:不知何故,在大约 18 小时和多次重新启动后,我的 AVD 不再在其虚拟屏幕上进行点击操作。很难准确地指出发生了什么变化,因为自从我运行 Ubuntu 的 pre-alpha 版本以来,我一直在频繁更新软件包,但我认为这是因为使用 X11 而不是 Wayland。

这让我想到,您可以尝试将显示服务器从 Cocoa 更改为 X11。值得庆幸的是,MacPorts(FreeBSD Ports Tree 的 MacOS 版本)使交叉编译软件变得相当容易。它包含多平台类 UNIX 软件的构建配方,很像 HomeBrew,但通常允许更多定制。

这个水龙头问题已经够烦人的了,可能值得一试。

(来自 macports 网站)X11 窗口环境,适用于依赖其提供的功能来运行的端口。您对 X11 服务器有多种选择: https: //www.macports.org/install.php

我会按以下顺序构建它们:

MacPorts:X11 - 如果你构建它,你将已经拥有一堆库

MacPorts:QEMU - 使用make configure菜单选择GTK3+,如果没有 X11 的选项,请make在安装 X11 后尝试使用此构建标志(将其指向 X11 的 lib 目录):

make -L/opt/X11/lib -lX11

最后,MacPorts:Android 平台工具

相关 StackOverflow 问答:

在 Mac OS X 中编译使用 OpenGL 的 C 程序

在 Mac 操作系统上运行 x11