前面已经下载好了Android源码,可以在对应目录下构建二次开发后的monkey jar包了;
当前环境:Ubuntu16.04,Andorid10源码。
1.初始化环境
cd进入android源码根目录,执行source build/envsetup.sh 初始化环境;
2.修改Android.mk配置文件
只构建monkey,需修改Android.mk配置文件;
/android_10/development/cmds/monkey/Android.mk
增加一行: LOCAL_DEX_PREOPT:=false
3.执行make monkey
执行成功后有完成提示信息;
4.指定目录下可找到jar包
/android_10/out/target/product/generic/system/framework
5.jar包推到手机/sdcard,可调起执行
终端执行命令:
adb push monkey.jar /sdcard
adb shell CLASSPATH=/sdcard/monkey.jar exec app_process /system/bin com.android.commands.monkey.Monkey --ignore-security-exceptions 600
能够调起执行随机测试即可;
后面就可以按需修改monkey源码,并构建jar包执行到安卓设备上了。
6.Android6.0.1版本make问题记录
最近发现base在android10上的jar包运行在低版本无法调起测试,且没有报错信息,看起来是未进入monkey; 为了节约时间先base在Android6.0.1上开发了,低版本构建会有些其它问题,这里记录下;- Android6.0.1 make jar包需要OPEN JDK1.7版本;
OPEN JDK1.7版本的包比较老很难找,直接粘贴到这;
链接: https://pan.baidu.com/s/1FSIkN7ooz1tBBCnZ-6B80A 提取码: iwbw
解压后将路径配置到java环境变量即可;(gedit ~/.bashrc)
![](/i/l/?n=23&i=blog/2352957/202303/2352957-20230317185145908-1313494857.png)
- Make monkey提示需要openjdk1.7.x,但你的版本是openjdk1.7;
这里确认本地环境已经配置好1.7了,提示很奇怪,可以临时修改下配置文件越过这个问题,感觉是bug;
修改android文件夹下的 /build/core/main.mk 配置文件修改下,对应修改如下:![](/i/l/?n=23&i=blog/2352957/202303/2352957-20230317185341714-1576105354.png)