前面已经下载好了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)

      
 
  • Make monkey提示需要openjdk1.7.x,但你的版本是openjdk1.7;

        这里确认本地环境已经配置好1.7了,提示很奇怪,可以临时修改下配置文件越过这个问题,感觉是bug;

        修改android文件夹下的 /build/core/main.mk 配置文件修改下,对应修改如下:
 
      
      

        再执行应该就可以了;
  

Monkey二次开发 -- Monkey jar包构建的更多相关文章

  1. spring boot开发,jar包一个一个来启动太麻烦了,写一个bat文件一键启动

    spring boot开发,jar包一个一个来启动太麻烦了,写一个bat文件一键启动 @echo offcd D:\workProject\bushustart cmd /c "title ...

  2. 【转】Maven实战(二)---多模块开发---缺少Jar包

    原博文出于:http://blog.csdn.net/liutengteng130/article/details/41611755    感谢! Maven里面的Jar包经常出现Missing的情况 ...

  3. java开发常用jar包介绍(转载)

    jta.jar 标准JTA API必要 commons-collections.jar 集合类 必要 antlr.jar  ANother Tool for Language Recognition ...

  4. java开发常用jar包

    mail.jar与activation.jar 里面包含了activation.jar和mail.jar两个包.通过里面的类的调用便可以达到发送电子邮件的目的 commons-beanutils.ja ...

  5. wechat4j开发所有jar包

    wechat4j开发所需要的jar包合计,不用你去单独下载,已经全部包括 下载连接 wechat4j-lib.rar 如果你的服务是部署在新浪云计算SAE上的,那么下载这个jar合集 wechat4j ...

  6. 本地开发的jar包放到本地maven仓库

    mvn install:install-file -Dfile=C:\Users\Administrator\Desktop\taobao-sdk-java-1455552377940-2016060 ...

  7. HBase二次开发之搭建HBase调试环境,如何远程debug HBase源代码

    版本 HDP:3.0.1.0 HBase:2.0.0 一.前言 之前的文章也提到过,最近工作中需要对HBase进行二次开发(参照HBase的AES加密方法,为HBase增加SMS4数据加密类型).研究 ...

  8. 总结:独立开发 jar 包组件——功能主要是支持查询数据库的所有表数据

    前言:开发完一个项目,必定总结,这次就将总结记录在博客,第一次开发组件 jar 包,包含前端,后台,中间遇到好多问题,这里一一描述.转载请注明出处: https://www.cnblogs.com/y ...

  9. gitlab+jenkins自动构建jar包并发布

    一.背景介绍: 公司软件都是java开发的,一般都会将java代码打包成jar包发布:为了减轻运维部署的工作量,合理偷懒,就需要自动化流程一条龙服务:开发将代码提交到gitlab--->jenk ...

  10. webService-axis开发jar包

    开发最小jar包集: activation-1.1.jar axiom-api-1.2.13.jar axiom-dom-1.2.13.jar axiom-impl-1.2.13.jar axis2- ...

随机推荐

  1. SQL IIF函数的使用 判断为空数据不显示的问题

    先说说IIF函数 IIF函数 需要一个条件 两个值 当条件满足的时候 执行第一个值 条件不满足的时候 执行第二个值 IIF(判断条件,值1,值2) 今天判断数据的时候 发现当值为NULL或者为'    ...

  2. iterm2免密自动登陆服务器

    之前的配置方式出现了less命令查看文本格式紊乱,以及输入的命令也是紊乱的,导致没办法正常使用 以前的配置方式如下: 在iterm2里配置command,如下图 2. online文件如下: #!/u ...

  3. CentOS7/6 关闭防火墙(转载)

    CentOS6关闭防火墙使用以下命令, //临时关闭 service iptables stop //禁止开机启动 chkconfig iptables off CentOS7中若使用同样的命令会报错 ...

  4. Tacotron2论文阅读笔记

    Tacotron2 NATURAL TTS SYNTHESIS BY CONDITIONING WAVENET ON MEL SPECTROGRAM PREDICTIONS论文阅读笔记 先推荐一篇比较 ...

  5. C++ 函数参数与按值传递

    C++ 函数参数与按值传递 C++ 通常安值传递参数,这意味着将数值参数传递给函数,而后者将其赋给一个新的变量. double volume = cube(side); 其中,side 是一个变量. ...

  6. 使用idea从零编写SpringCloud项目-Feign

    ps:Fegin和Ribbon 其实是差不多的东西,Fegin里面也是集成了Ribbon,不过咱们写代码不是要优雅嘛,使用Feign就会优雅很多了,看着比直接使用Ribbon舒坦一点 就不重新构建项目 ...

  7. oracle 白名单作用及配置教程

    出于提高数据安全性等目地,我们可能想要对oracle的访问进行限制,允许一些IP连接数据库或拒绝一些IP访问数据库. 当然使用iptables也能达到限制的目地,但是从监听端口变更限制仍可生效.只针对 ...

  8. oracle表名中带@什么意思,例如:select * from dim.dim_area_no@to_dw

    转载自:https://zhidao.baidu.com/question/259154968.html @是调用数据库链接(database link)的意思. 数据库链接的作用是从a数据库到b数据 ...

  9. .Net Core 前后端分离 DevOps 系列

    前言: 目录: Linux 安装脚本之乌班图版本 Linux Nginx部署 DevOps安装步骤

  10. Node.js+Vue.js开发王者荣耀手机端官网

    一.项目初始 1.工具安装和环境搭建 node.js.npm.mongodb 编辑器:VScode 2.项目初始化 项目分为三个部分,分别是移动端界面.后台管理界面和node.js开发的整体的服务端 ...