当前位置:
首页 > Python基础教程 >
-
python基础教程之[bug]android monkey命令在Android N和
最近再调试这个统计FPS的代码,发现代码在android N上可以正常运行,但在android O上却运行不了,拼了命的报错,给出的提示就是 ZeroDivisionError: division by zero,看这错误很明显就是除数不能为0,理论上来说这问题也比较好定位就一步一步找了,排查代码后发现获取除数这个值的逻辑有问题,重新把逻辑修改后获取到正确的值后,重新运行命令跑的时候有时候会有值,有时候还是继续报这个除数不能为零,再重新查看这个除数的来源,是当屏幕有刷新时才能获取到该值,再查看让屏幕刷新的代码,发现是通过monkey的命令来模拟拖动屏幕操作,但在实际测试过程中屏幕根本就没有动,接下来就看Monkey的命令 :adb shell monkey -f /sdcard/monkeyTest_UD.txt 10,发现是从sd卡中获取一个monkey脚本来运行的,打开monkey脚本后,看看格式也没有啥问题。如下
1
2
3
4
5
6
7
8
9
|
type = user count = 10 speed = 1.0 start data >> Drag( 300.0 , 307.2 , 300.0 , 819.2 , 122.8 ) Drag( 300.0 , 307.2 , 300.0 , 819.2 , 122.8 ) Drag( 300.0 , 819.2 , 300.0 , 307.2 , 122.8 ) Drag( 300.0 , 819.2 , 300.0 , 307.2 , 122.8 ) |
给出monkey命令中drag的命令语法:
Drag(xStart,yStart,xEnd,yEnd,stepCount)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
D:\WorkSpace3\Performance\>python3 FPStest.py - o UD - c 10 通过gfxinfo取值, 测试开始... bash arg: - f bash arg: / sdcard / monkeyTest_UD.txt bash arg: 10 args: [ - f, / sdcard / monkeyTest_UD.txt, 10 ] arg: "-f" arg: "/sdcard/monkeyTest_UD.txt" arg: "10" data = "/sdcard/monkeyTest_UD.txt" * * Error: A RuntimeException occurred: java.lang.NumberFormatException: For input string: "122.8" at java.lang.Integer.parseInt(Integer.java: 608 ) at java.lang.Integer.parseInt(Integer.java: 643 ) at com.android.commands.monkey.MonkeySourceScript.handleEvent(MonkeySourceScr ipt.java: 502 ) at com.android.commands.monkey.MonkeySourceScript.processLine(MonkeySourceScr ipt.java: 793 ) at com.android.commands.monkey.MonkeySourceScript.readLines(MonkeySourceScrip t.java: 249 ) at com.android.commands.monkey.MonkeySourceScript.readNextBatch(MonkeySourceS cript.java: 835 ) at com.android.commands.monkey.MonkeySourceScript.getNextEvent(MonkeySourceSc ript.java: 962 ) at com.android.commands.monkey.Monkey.runMonkeyCycles(Monkey.java: 1199 ) at com.android.commands.monkey.Monkey.run(Monkey.java: 697 ) at com.android.commands.monkey.Monkey.main(Monkey.java: 557 ) at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method) at com.android.internal.os.RuntimeInit.main(RuntimeInit.java: 285 ) Events injected: 0 ## Network stats: elapsed time=18ms (0ms mobile, 0ms wifi, 18ms not connected) * * System appears to have crashed at event 0 of 10 using seed 1541262762069 Traceback (most recent call last): File "FPStest.py" , line 196 , in <module> monkey_run() File "FPStest.py" , line 190 , in monkey_run fps_avg = round ( sum (fps_list) / len (fps_list), 2 ) ZeroDivisionError: division by zero |
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式