APP如何接收Motion_UP
时间: 2023-09-07 15:11:44 浏览: 89
在APP中接收Motion_UP事件通常需要进行以下步骤:
1. 获取界面的View对象,可以通过findViewById方法获取。
2. 为View对象设置OnTouchListener监听器,监听器可以通过实现onTouch方法来处理Motion_UP事件。
3. 在onTouch方法中,通过MotionEvent对象的getAction方法获取事件类型,如果事件类型是MotionEvent.ACTION_UP,则表示用户已经松开手指,此时可以执行相应的操作。
4. 处理完事件后,可以返回true表示事件已经被处理,或者返回super.onTouch(v, event)表示继续传递事件给父控件进行处理。
需要注意的是,如果界面中存在多个View对象,需要为每个View对象都设置相应的OnTouchListener监听器来处理事件。
相关问题
你以一个20年Android开发的身份,我需要一个monkey 命令,要求对com.my.app包名进行随机测试30分钟,要求每过30s按返回键一直到桌面再打开这个包名的app,其他时间在app里乱点要求频率0.3s点一次
好的,根据您的要求,以下是对com.my.app包名进行随机测试30分钟的Monkey命令:
```
adb shell monkey -p com.my.app --throttle 300 -s 1234 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --monitor-native-crashes --pct-touch 30 --pct-motion 10 --pct-trackball 5 --pct-nav 10 --pct-majornav 10 --pct-syskeys 5 --pct-appswitch 5 --pct-flip 5 --pct-anyevent 20 --pct-motion 10 --pct-pinchzoom 5 --pct-permission 5 --pct-suspendresume 5 --pct-rotation 5 --pct-volume 5 --pct-touch-up 5 --pct-touch-move 5 --pct-longpress 5 --pct-language 5 --pct-activity 5 --pct-drag 5 --pct-pressmenu 5 --pct-pressback 100 -v --throttle 30000 1800
```
解释一下各个参数的含义:
1. `-p com.my.app`:指定需要测试的应用程序包名。
2. `--throttle 300`:设置两个事件之间的延迟时间为300毫秒。
3. `-s 1234`:设置随机数种子为1234。
4. `--ignore-crashes`:忽略应用程序崩溃错误。
5. `--ignore-timeouts`:忽略超时错误。
6. `--ignore-security-exceptions`:忽略安全异常。
7. `--monitor-native-crashes`:监视本地崩溃。
8. `--pct-touch 30`:触摸事件的触发概率为30%。
9. `--pct-motion 10`:滑动事件的触发概率为10%。
10. `--pct-trackball 5`:轨迹球事件的触发概率为5%。
11. `--pct-nav 10`:导航事件的触发概率为10%。
12. `--pct-majornav 10`:主要导航事件的触发概率为10%。
13. `--pct-syskeys 5`:系统按键事件的触发概率为5%。
14. `--pct-appswitch 5`:应用程序切换事件的触发概率为5%。
15. `--pct-flip 5`:屏幕翻转事件的触发概率为5%。
16. `--pct-anyevent 20`:任何事件的触发概率为20%。
17. `--pct-motion 10`:滑动事件的触发概率为10%。
18. `--pct-pinchzoom 5`:缩放事件的触发概率为5%。
19. `--pct-permission 5`:权限事件的触发概率为5%。
20. `--pct-suspendresume 5`:挂起/恢复事件的触发概率为5%。
21. `--pct-rotation 5`:屏幕旋转事件的触发概率为5%。
22. `--pct-volume 5`:音量事件的触发概率为5%。
23. `--pct-touch-up 5`:触摸松开事件的触发概率为5%。
24. `--pct-touch-move 5`:触摸移动事件的触发概率为5%。
25. `--pct-longpress 5`:长按事件的触发概率为5%。
26. `--pct-language 5`:语言事件的触发概率为5%。
27. `--pct-activity 5`:活动事件的触发概率为5%。
28. `--pct-drag 5`:拖拽事件的触发概率为5%。
29. `--pct-pressmenu 5`:按菜单事件的触发概率为5%。
30. `--pct-pressback 100`:按返回键事件的触发概率为100%。
31. `-v`:启用详细日志输出。
32. `--throttle 30000`:设置两次Monkey测试之间的间隔时间为30秒。
33. `1800`:设置Monkey测试的持续时间为30分钟。
注意事项:
1. 如果您的应用程序需要登录才能进入主页面,请在测试之前先登录。
2. 在测试期间不要手动操作手机,以免影响Monkey测试的结果。
3. 如果测试过程中出现了错误,请检查是否设置了正确的包名和权限。
你以一个20年Android开发的身份,我需要一个monkey 命令,要求对com.my.app包名进行随机测试30分钟,要求每过30s按返回键一直到桌面再打开这个包名的app,其他时间在app里乱点要求频率0.3s点一次,并最后生成hprof文件,和全量logcat文件到c盘
好的,根据您的要求,以下是对com.my.app包名进行随机测试30分钟并生成hprof文件和全量logcat文件的Monkey命令:
```
adb shell monkey -p com.my.app --throttle 300 -s 1234 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --monitor-native-crashes --pct-touch 30 --pct-motion 10 --pct-trackball 5 --pct-nav 10 --pct-majornav 10 --pct-syskeys 5 --pct-appswitch 5 --pct-flip 5 --pct-anyevent 20 --pct-motion 10 --pct-pinchzoom 5 --pct-permission 5 --pct-suspendresume 5 --pct-rotation 5 --pct-volume 5 --pct-touch-up 5 --pct-touch-move 5 --pct-longpress 5 --pct-language 5 --pct-activity 5 --pct-drag 5 --pct-pressmenu 5 --pct-pressback 100 -v --throttle 30000 1800 --hprof --kill-process-after-error > /sdcard/monkey.logcat.txt && adb pull /sdcard/monkey.logcat.txt c:/ && adb pull /sdcard/monkey.hprof c:/
```
解释一下各个参数的含义:
1. `-p com.my.app`:指定需要测试的应用程序包名。
2. `--throttle 300`:设置两个事件之间的延迟时间为300毫秒。
3. `-s 1234`:设置随机数种子为1234。
4. `--ignore-crashes`:忽略应用程序崩溃错误。
5. `--ignore-timeouts`:忽略超时错误。
6. `--ignore-security-exceptions`:忽略安全异常。
7. `--monitor-native-crashes`:监视本地崩溃。
8. `--pct-touch 30`:触摸事件的触发概率为30%。
9. `--pct-motion 10`:滑动事件的触发概率为10%。
10. `--pct-trackball 5`:轨迹球事件的触发概率为5%。
11. `--pct-nav 10`:导航事件的触发概率为10%。
12. `--pct-majornav 10`:主要导航事件的触发概率为10%。
13. `--pct-syskeys 5`:系统按键事件的触发概率为5%。
14. `--pct-appswitch 5`:应用程序切换事件的触发概率为5%。
15. `--pct-flip 5`:屏幕翻转事件的触发概率为5%。
16. `--pct-anyevent 20`:任何事件的触发概率为20%。
17. `--pct-motion 10`:滑动事件的触发概率为10%。
18. `--pct-pinchzoom 5`:缩放事件的触发概率为5%。
19. `--pct-permission 5`:权限事件的触发概率为5%。
20. `--pct-suspendresume 5`:挂起/恢复事件的触发概率为5%。
21. `--pct-rotation 5`:屏幕旋转事件的触发概率为5%。
22. `--pct-volume 5`:音量事件的触发概率为5%。
23. `--pct-touch-up 5`:触摸松开事件的触发概率为5%。
24. `--pct-touch-move 5`:触摸移动事件的触发概率为5%。
25. `--pct-longpress 5`:长按事件的触发概率为5%。
26. `--pct-language 5`:语言事件的触发概率为5%。
27. `--pct-activity 5`:活动事件的触发概率为5%。
28. `--pct-drag 5`:拖拽事件的触发概率为5%。
29. `--pct-pressmenu 5`:按菜单事件的触发概率为5%。
30. `--pct-pressback 100`:按返回键事件的触发概率为100%。
31. `-v`:启用详细日志输出。
32. `--throttle 30000`:设置两次Monkey测试之间的间隔时间为30秒。
33. `1800`:设置Monkey测试的持续时间为30分钟。
34. `--hprof`:生成hprof文件,用于分析内存泄漏问题。
35. `--kill-process-after-error`:在发生错误后杀掉应用程序进程。
36. `> /sdcard/monkey.logcat.txt`:将Monkey测试的日志输出到/sdcard/monkey.logcat.txt文件中。
37. `&& adb pull /sdcard/monkey.logcat.txt c:/`:将/sdcard/monkey.logcat.txt文件从设备拉取到电脑的C盘。
38. `&& adb pull /sdcard/monkey.hprof c:/`:将/sdcard/monkey.hprof文件从设备拉取到电脑的C盘。
注意事项:
1. 如果您的应用程序需要登录才能进入主页面,请在测试之前先登录。
2. 在测试期间不要手动操作手机,以免影响Monkey测试的结果。
3. 如果测试过程中出现了错误,请检查是否设置了正确的包名和权限。
4. 请确保您的设备连接到了电脑,并且已经安装了ADB驱动。
阅读全文