二、启动一款app演示
一、下载aapt包
1. aapt即Android Asset Packaging Tool,在SDK的build-tools目录下。该工具可以查看apk包名和launcherActivity
2.打开android-sdk里面双击SDK-manager,下载buidl-tools

3.下载完成之后在 sdk路径下找到:F:\Android\android-sdk\build-tools\28.0.3下找到aapt.exe,双击运行即可
4.打开cmd------输入aapt回车,出现以下情况代表安装成功

二、使用aapt获取app的包名
1.取将app的包放至D:\devices(xxx.apk)
2.aapt dump badging D:\test\xxx.apk(APK的全名,如手机淘宝.apk)
包名:

launcherActivity的值:

三、写脚本:
1.platformName:这里是android的apk
2.deviceName:手机设备名称,通过adb devices查看
3.platformVersion:android系统的版本号
4.appPackage:apk包名
5.appActivity:apk的launcherActivity
6. noReset :False --是否重置APP,True不重置
def test_Init(self):
self.desired_caps = {}
self.desired_caps['platformName'] = myConfig.getAppDevices("platform_Name")
self.desired_caps['platformVersion'] = myConfig.getAppDevices("platform_Version")
self.desired_caps['deviceName'] = myConfig.getAppDevices("device_Name")
# self.desired_caps['app'] = myConfig.getAppDevices("app_Path")
self.desired_caps['noReset'] = myConfig.getAppDevices("app_noReset")
self.desired_caps['unicodeKeyboard'] = myConfig.getAppDevices("app_unicodeKeyBoard")
self.desired_caps['resetKeyboard'] = myConfig.getAppDevices("app_resetKeyBoard")
# 要启动的应用包名
self.desired_caps['appPackage'] = myConfig.getAppDevices("app_Package")
self.desired_caps['automationName'] = myConfig.getAppDevices("app_automationName")
# 要启动的应用的起始activity
self.desired_caps['appActivity'] = myConfig.getAppDevices("app_Activity") server_url = myConfig.getAppDevices("appium_server")+':'+myConfig.getAppDevices("appium_port")+'/wd/hub'
# print("server_url = " + server_url) self.driver = webdriver.Remote(server_url,self.desired_caps)
self.driver.implicitly_wait(30) return self.driver

6.driver中的路径为

7.打开appium,点击右上角的运行按钮,变为方形的为运行中

8.确认连接手机
9.使用pycharm运行脚本
10.接下来,手机app中的手机淘宝就会启动
二、启动一款app演示的更多相关文章
- Android项目实战(二十二):启动另一个APP or 重启本APP
一.启动另一个APP 目前公司项目需求,一个主APP,需要打开某些小APP,这些小APP是整合了Unity的,但是还是android程序(所有小APP的包名是已知的). 以前没做过,查询了一下实现方法 ...
- Appium(二)---启动App+模拟滑动
环境搭建好了,就可以实现基本的操作,比如启动App和模拟滑动.这里我实现的是在真机(乐视1s)上启动抖音App,并滑动抖音的视频列表,代码如下: from appium import webdrive ...
- js判断移动端是否安装某款app的多种方法
本文实例讲解了js判断移动端是否安装某款app的多种方法,分享给大家供大家参考,具体内容如下 第一种方法: 一:判断是那种设备 ? || u.indexOf(; //android终端或者uc浏览器 ...
- 一款APP从设计稿到切图过程全方位揭秘 Mark
纯干货!一款APP从设计稿到切图过程全方位揭秘 @BAT_LCK:我本身是一名GUI设计师,所以我只站在GUI设计师的角度去把APP从项目启动到切片输出的过程写一写,相当于工作流程的介绍吧.公司不 ...
- 纯干货!一款APP从设计稿到切图过程全方位揭秘(转)
@BAT_LCK :我本身是一名GUI设计师,所以我只站在GUI设计师的角度去把APP从项目启动到切片输出的过程写一写,相当于工作流程的介绍吧.公司不同,流程不尽相同,但是终究还是能有些帮助. 依旧声 ...
- Day1:了解APICloud平台、理解APICloud应用设计思想、掌握平台使用流程。学习如何对一款APP进行需求分析、功能分解和架构设计等编码之前重要的准备工作
学习目标 总体上了解一下APICloud平台,重点介绍相关的学习资源,入门资料,常见的FAQ等 明确我们这七天要开发一个什么样的APP,明确功能需求,跟上每天的课程节奏,可以课前预习 梳理出对于一款A ...
- 4款APP原型设计工具助你搞定移动应用设计!
随着信息化社会的不断发展,不仅手机迭代更新的速度飞快,就连手机里的App 也层出不穷.作为一名UI/UX设计师或产品经理,如何才能设计一款出色的移动App?光有好的创意是不够的,你还需要一款正确的Ap ...
- 五款app原型设计工具对比
五款app原型设计工具对比 Proto.io, Pixate, Origami, Framer & Form 本文由Panblack 翻译,原文作者 Tes Mat 我用五款“高保真”原型设计 ...
- 养活一款APP要“烧”多少钱?
Duang!又一款APP刷爆朋友圈.大片范儿的电影截图.意味深长的经典对白均出自一款名为“足记”的APP. 足记团队刚于去年8月完成天使期融资,投资方是光速创投和紫辉创投,目前正准备A轮融资.且近一周 ...
随机推荐
- DNS 缓存投毒
原文:[DNS Cache Poisoning]( https://medium.com/iocscan/dns-cache-poisoning-bea939b5afaf) 译者:neal1991 w ...
- gulp.js实现less批量实时编译
问题描述: 在之前一直用Koala编译less文件,但本人感觉Koala用起来非常麻烦,好像不能做多个less文件的批量的编译:因为目前项目也没有用到webpack,我的less是通过vs code ...
- Thymeleaf后台传值读取
/** * 测试用Controller * * @author * @date 2019-08-15 */@Controller@RequestMapping("/danyu/test& ...
- 缺少库libresolv
"_dns_free_resource_record", referenced from: -[xxxx processRecord:length:] in xxx.a(xxx.o ...
- Visual Studio Code python 代码快速自动提示
1.file --> setting->设置 搜索 python 或者auto_complete setting.json { "explorer.confirmDelete&q ...
- centos7搭建docker+k8s集成
1. 关闭防火墙 # systemctl stop firewalld # systemctl disable firewalld # setenforce 2. 使用yum安装etcd和kubern ...
- 修改或删除windows上的git用户凭证信息
参考博客:https://blog.csdn.net/qq_42249896/article/details/85207865
- 机器学习五 EM 算法
目录 引言 经典示例 EM算法 GMM 推导 参考文献: 引言 Expectation maximization (EM) 算法是一种非常神奇而强大的算法. EM算法于 1977年 由Dempster ...
- json与string与map的理解
json是一种特殊格式的string字符串,也就是json也是string类型,只是这种string是有格式的,那么他的格式就是类似map的格式[key:value] 举例子: Map map = r ...
- python路径拼接os.path.join()函数的用法
os.path.join()函数:连接两个或更多的路径名组件 1.如果各组件名首字母不包含’/’,则函数会自动加上 2.如果有一个组件是一个绝对路径,则在它之前的所有组件均会被舍弃 3.如果最后一个组 ...