对于我正在进行的研究,我需要从用户与Android设备ICS的交互中收集数据,或者更好地用于触摸输入。我认为最好的方法是使用开发人员选项设置下的指针位置。我将重新创建的源代码跟踪到一个程序中,通过logcat可以看到该程序中的日志,但是当我从设置运行时,我无法看到它。任何人都可以指出我如何获得这些日志文件的正确方向?这里似乎负责记录的源代码在我的应用程序中运行良好但不通过设置菜单:
private void More ...logPointerCoords(MotionEvent.PointerCoords coords, int id) {
Log.i(TAG, mText.clear()
.append("Pointer ").append(id + 1)
.append(": (").append(coords.x, 3).append(", ").append(coords.y, 3)
.append(") Pressure=").append(coords.pressure, 3)
.append(" Size=").append(coords.size, 3)
.append(" TouchMajor=").append(coords.touchMajor, 3)
.append(" TouchMinor=").append(coords.touchMinor, 3)
.append(" ToolMajor=").append(coords.toolMajor, 3)
.append(" ToolMinor=").append(coords.toolMinor, 3)
.append(" Orientation=").append((float)(coords.orientation * 180 / Math.PI), 1)
.append("deg").toString());
}
编辑我对源代码所做的事情:
我从两个类重新创建了一个程序/应用程序:公共类PointerLocationView扩展View 从公共类PointerLocation extends Activity 调用,并设法在一个活动中复制相同的功能。
感谢您的帮助。
答案 0 :(得分:1)
AFAIK无法以编程方式记录系统范围的触摸:https://android.stackexchange.com/questions/13992/how-can-i-record-touches
我无法使用指针位置开发人员选项生成任何触摸日志。它仅在您打开一次时记录,而它们不是指针位置,它们就像一般信息一样。
也许这个应用程序可能会给你一个想法(我没试过)
https://play.google.com/store/apps/details?id=com.cygery.repetitouch.free
答案 1 :(得分:1)
对于将来对这样的事情感兴趣的人来说,重复触控很棒。我试了一段时间,但我需要一些额外的和不同的ui。因此,我为自己用getevent和sendevent为root用户写了一个程序。