基于Ubuntu搭建GMS测试环境
一、版本信息:
系统版本:Ubuntu 18.04.2 LTS
JDK版本: 1.8.0_171
SDK版本:android-sdk_r24.4.1-linux.tgz
ADB版本:1.0.40
apktool版本:2.4.0
aapt(Android Asset Packaging Tool)版本:v0.2-eng.ibotpe.20190216.092407
二、安装JDK
#sudo add-apt-repository ppa:openjdk-r/ppa
#sudo apt-get update
#sudo apt-get install openjdk--jdk
安装完成后,输入java -version,检查环境是否OK,如下:

三、安装SDK
1、下载最新SDK版本(点击链接进入下载页面),本文使用android-sdk_r24.4.1-linux.tgz,手动解压,会得到android-sdk-linux文件夹,本文放置到/home/amlogic/sdk下,如下:

2、进入tools文件夹,运行./android

3、选择安装最新的工具,一般默认即可,点击"install 8 packages"

4、添加SDK环境变量
<第一种方法>
#sudo gedit ~/.bashrc
//打开文件后,末尾添加如下信息(SDK路径改成实际路径):
export ANDROID_SDK=/home/amlogic/sdk/android-sdk-linux
export PATH=$PATH:$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools
//保存退出后,使环境生效
#source ~/.bashrc
<第二种方法>
#su
//SDK路径改成实际路径
#echo 'export ANDROID_SDK=/home/amlogic/sdk/android-sdk-linux' >> ~/.bashrc
#echo 'export PATH=$PATH:$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools' >> ~/.bashrc
//使环境生效
#source ~/.bashrc
5、验证是否安装ok,输入adb version,如下:

四、安装32 位类库
#sudo apt-get install lib32ncurses5 lib32z1 libstdc++:i386 -y
五、安装minicom
//非必需,如果使用串口工具调试则安装
#sudo apt-get install minicom -y
六、安装apktool:
官网教程:点击链接:
1、下载apktool脚本:apktool (右键点击, 保存链接为文件,文件名保存为apktool,无后缀)
2、下载最新apktool.jar (点击进入),将下载的最新.jar文件重命名为apktool.jar(例如:apktool_2.4.0.jar改为apktool.jar)
3、将apktool和apltool.jar放置到/usr/local/bin目录下
4、更改文件权限
#su
#chmod /usr/local/bin/apktool
#chmod /usr/local/bin/apktool.jar
5、检查apktool环境:
#apktool -version
七、安装aapt工具
1、解压第六步下载的apktool.jar解压,提取解压后apktool/prebuilt/linux/目录下的aapt文件
2、将aapt放置到/usr/local/bin
3、设置权限:
#chmod /usr/local/bin/aapt
4、验证aapt环境:
#aapt version
八、VTS环境(若测试CTS/CTS-ON-GSI/GTS/STS无需配置此项)
1、Install Python development kit:
#sudo apt-get install python-dev
2、Install Protocol Buffer tools (for Python):
#sudo apt-get install python-protobuf
#sudo apt-get install protobuf-compiler
3、Install Python virtual environment-related tools:
#sudo apt-get install python-virtualenv
#sudo apt-get install python-pip
//更新到最新
#sudo pip install --upgrade pip
#sudo pip install --upgrade virtualenv
4、(Optionally) Download Python packages from PyPI to a local directory:
(1) 在合适位置建立VTS_PYPI_PATH文件夹
(2) 将VTS_PYPI_PATH路径加入环境变量后配置环境
#sudo gedit ~/.bashrc
//打开文件后,末尾添加如下信息(VTS_PYPI_PATH路径改成实际路径):
export VTS_PYPI_PATH=/home/amlogic/VTS_PYPI_PATH
//保存退出后,使环境生效
#source ~/.bashrc
#curl https://android.googlesource.com/platform/test/vts/+/master/script/pip_requirements.txt?format=TEXT | base64 -d > pip_requirements.txt
#pip download -d $VTS_PYPI_PATH -r pip_requirements.txt --no-binary protobuf,grpcio,matplotlib,numpy,Pillow,scipy
九、开始测试(以CTS为例)

4、至此,ubuntu android GMS环境搭建完成,测试方法另述
基于Ubuntu搭建GMS测试环境的更多相关文章
- Centos7安装Docker 基于Dockerfile 搭建httpd运行环境
Centos7安装Docker 基于Dockerfile 搭建httpd运行环境 docker docker搭建 docker build 本文档完成目标内容如下 使用Docker搭建http服务器一 ...
- 一文教您如何通过 Docker 快速搭建各种测试环境(Mysql, Redis, Elasticsearch, MongoDB) | 建议收藏
欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...
- 基于Ubuntu 搭建 WordPress 个人博客 - 开发者实验室 - 腾讯云
1.准备 LAMP 环境 安装 Apache2 在终端输入该命令 ,使用 apt-get 安装 Apache2: sudo apt-get install apache2 -y 安装好后,您可以通过访 ...
- Docker-教你如何通过 Docker 快速搭建各种测试环境
今天给大家分享的主题是,如何通过 Docker 快速搭建各种测试环境,本文列举的,也是作者在工作中经常用到的,其中包括 MySQL.Redis.Elasticsearch.MongoDB 安装步骤,通 ...
- Ubuntu 搭建PHP开发环境
Ubuntu确实很好玩.有喜欢的命令行,简洁的界面,不同于Window要的感觉.偶尔换换环境工作,学习Linux的思维方式,是一种不错的做 法.之前也折腾过Ubuntu,不过,因为网络的问题,一直没有 ...
- 使用XAMPP和DVWA在Windows7上搭建渗透测试环境
前言: XAMPP是一个Web应用程序运行环境集成软件包,包括MySQL.PHP.PerI和Apache的环境及Apache.MySQL.FilleZilla.Mercury和Tomecat等组件.D ...
- 使用WampServer和DVWA在Windows10上搭建渗透测试环境
前言: DVWA是一个具有脆弱性的Web测试应用,需要PHP和MySQL的环境支持.我们可以手动配置DVWA所需的运行环境,也可以使用WampServer进行搭建.WampServer是集成了Apac ...
- 使用Rancher搭建K8S测试环境
使用Rancher搭建K8S测试环境 http://blog.csdn.net/csdn_duomaomao/article/details/75316926 环境准备(4台主机,Ubuntu16.0 ...
- 利用Docker Compose快速搭建本地测试环境
前言 Compose是一个定义和运行多个Docker应用的工具,用一个YAML(dockder-compose.yml)文件就能配置我们的应用.然后用一个简单命令就能启动所有的服务.Compose编排 ...
随机推荐
- ES6 常用1
( (1)交换变量的值 ) [x, y] = [y, x]; ( (2)从函数返回多个值 // 返回一个数组function example() { return [1, 2, 3]; } var [ ...
- C# 单例模式的多种简单实现
什么是单例模式? 这里我就不做过多的解释了, 毕竟关于Singleton的资料实在是太多太多了.点击这里 1.简单的思路就是, 创建对象单例的动作转移到另外的行为上面, 利用一个行为去创建对象自身, ...
- MySQL复制 -- 复制出错怎么办?
假如我们生产环境复制出错?该怎么办呢? 下面提供几种办法: 1. 手工处理,补回不一致数据(可以利用主库来补数据.也可以利用binlog来补数据) 2.用开源工具来解决一致性问题 3.自己造轮子,解决 ...
- 通过域名访问部署在服务器上的javaweb项目
因为对域名访问什么也不了解,遇到问题就有种不知道从哪里下手的茫然,也就更不知道错在哪里,前前后后一共折腾了一天多,最后问了阿里客服才成功弄出来,因此记录一下. 关于服务器的购买.配置,及域名的备案解析 ...
- Chrome神器Vimium快捷键学习记录
今天下午折腾了一下Chrome下面的一个插件Vimium的使用,顿时发现该插件功能强大,能够满足减少鼠标的使用.至于为何要使用这个插件,源于我手腕上的伤一直没有好,使用鼠标的时候有轻微的疼痛.而且,由 ...
- 015 反射中的 Class.forName() 与 ClassLoader.loadClass() 的区别
作者:nnngu GitHub:https://github.com/nnngu 博客园:http://www.cnblogs.com/nnngu 简书:https://www.jianshu.com ...
- MT【122】一个重要的不平凡的无穷级数
求证:$1+\dfrac{1}{4}+\dfrac{1}{9}+\cdots +\dfrac{1}{n^2}+\cdots = \dfrac{\pi^2}6$. 解答:考虑$$\dfrac{\sin ...
- 【python】爬虫实践
参考链接 https://blog.csdn.net/u012662731/article/details/78537432 详解 python3 urllib https://www.jianshu ...
- Linux中cd test和cd /test以及类似命令的区别
一.加“/”的区别 今天重拾Linux的学习!按照书上,在tmp下,创建文件夹,命令如下: mkdir -p /test1/test2 结果使用下面两行命令结果不同,就对是否加“/”有了疑问,就去百度 ...
- LINUX内核分析第七周——可执行程序的装载
一.得到一个可执行程序 1. 预处理.编译.链接 gcc hello.c -o hello.exe gcc编译源代码生成最终可执行的二进制程序,GCC后台隐含执行了四个阶段步骤. 预处理 => ...