我想开发一个跟踪库(tracking.jar
)。此jar应该跟踪Android应用中点击控件的路径。当我们点击一个按钮时,这个jar应该记录按钮的UI路径。
例如,给定以下UI:
<RelativeLayout>
<TextView></TextView>
<LinearLayout>
<Button></Button>
</LinearLayout>
</RelativeLayout>
RelativeLayout/LinearLayout/Button
; RelativeLayout/TextView
。答案 0 :(得分:0)
我有一个解决方案,但并不完美。 AccessibilityService可以跟踪点击,但您需要手动打开辅助功能服务。 http://developer.android.com/reference/android/accessibilityservice/AccessibilityService.html
public class SampleAccessibilityService extends AccessibilityService {
public String getParentView(AccessibilityNodeInfo node){
return node != null ? node.getClassName() + "/" + getParentView(node.getParent()) : "";
}
@Override
public void onAccessibilityEvent(AccessibilityEvent accessibilityEvent) {
Log.e(tag,"click path is:" + getParentView(accessibilityEvent.getSource()));
}
}