ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

换种方式玩手机

2020-11-22 15:31:24  阅读:205  来源: 互联网

标签:方式 ss 换种 app npackage aweme 手机 android com


adb

uiautomator2

 

设备管理

查询已连接设备/模拟器

$ adb devices

List of devices attached
cf264b8f	device
emulator-5554	device
10.129.164.6:5555	device

查看设备信息

d.info
{'currentPackageName': 'com.ss.android.ugc.aweme', 'displayHeight': 1280, 'displayRotation': 0, 'displaySizeDpX': 411, 'displaySizeDpY': 731, 'displayWidth': 720, 'productName': 'cancro', 'screenOn': True, 'sdkInt': 23, 'naturalOrientation': True}

查看WLAN ip

d.wlan_ip
10.0.2.15

查看设备详细信息

{'udid': 'ZX1G42CPJD-08:00:27:81:24:f1-MIX_2', 'version': '6.0.1', 'serial': 'ZX1G42CPJD', 'brand': 'Xiaomi', 'model': 'MIX 2', 'hwaddr': '08:00:27:81:24:f1', 'port': 7912, 'sdk': 23, 'agentVersion': '0.9.5', 'display': {'width': 720, 'height': 1280}, 'battery': {'acPowered': True, 'usbPowered': False, 'wirelessPowered': False, 'status': 2, 'health': 2, 'present': True, 'level': 47, 'scale': 100, 'voltage': 3836, 'temperature': 251, 'technology': 'Li-poly'}, 'memory': {'total': 3628052, 'around': '3 GB'}, 'arch': '', 'owner': None, 'presenceChangedAt': '0001-01-01T00:00:00Z', 'usingBeganAt': '0001-01-01T00:00:00Z', 'product': None, 'provider': None}

将文件推送到设备

d.push("foo.txt", "/sdcard/")

从设备中拉出文件

d.pull("/sdcard/tmp.txt", "tmp.txt")

在设备中执行命令

output, exit_code = d.shell("pm list packages", timeout=60) # timeout 60s (Default)
{"error":null,"exitCode":0,"output":"package:com.github.uiautomator\npackage:com.hpbr.bosszhipin\npackage:com.android.providers.telephony\npackage:io.appium.settings\npackage:com.android.providers.calendar\npackage:com.android.providers.media\npackage:com.sohu.inputmethod.sogou\npackage:com.android.wallpapercropper\npackage:com.minhui.networkcapture\npackage:com.android.documentsui\npackage:com.android.galaxy4\npackage:com.android.externalstorage\npackage:com.android.htmlviewer\npackage:cn.com.open.mooc\npackage:com.android.quicksearchbox\npackage:com.android.mms.service\npackage:com.android.providers.downloads\npackage:com.github.uiautomator.test\npackage:com.android.browser\npackage:com.tal.kaoyan\npackage:io.appium.uiautomator2.server\npackage:com.android.defcontainer\npackage:de.robv.android.xposed.installer\npackage:com.droider.crackme0201\npackage:com.android.providers.downloads.ui\npackage:com.android.pacprocessor\npackage:com.xingin.xhs\npackage:com.tencent.mm\npackage:com.android.certinstaller\npackage:com.cxdosx.gowifisetting\npackage:com.cubic.choosecar\npackage:android\npackage:com.tencent.android.qqdownloader\npackage:com.android.camera2\npackage:com.baidu.searchbox\npackage:com.android.backupconfirm\npackage:com.yoho\npackage:com.android.provision\npackage:com.android.statementservice\npackage:bin.mt.plus\npackage:com.android.wallpaper.holospiral\npackage:com.android.phasebeam\npackage:com.android.providers.settings\npackage:just.trust.me\npackage:com.android.sharedstoragebackup\npackage:com.android.printspooler\npackage:com.tencent.qqlite\npackage:com.android.webview\npackage:com.android.inputdevices\npackage:com.xunmeng.pinduoduo\npackage:com.google.android.apps.maps\npackage:com.android.server.telecom\npackage:com.android.keychain\npackage:com.android.chrome\npackage:com.buscode.whatsinput\npackage:com.android.gallery3d\npackage:com.ss.android.ugc.aweme\npackage:com.android.calllogbackup\npackage:com.tencent.mobileqq\npackage:com.android.packageinstaller\npackage:com.android.proxyhandler\npackage:com.cyanogenmod.filemanager\npackage:io.dcloud.H5EA954BB\npackage:app.greyshirts.sslcapture\npackage:io.appium.uiautomator2.server.test\npackage:com.android.wallpaper.livepicker\npackage:com.zhuanzhuan.check\npackage:jackpal.androidterm\npackage:com.android.settings\npackage:com.nice.main\npackage:com.android.wallpaper\npackage:com.android.vpndialogs\npackage:com.sina.weibo\npackage:com.android.phone\npackage:com.android.shell\npackage:com.android.providers.userdictionary\npackage:com.hupan.app\npackage:com.android.location.fused\npackage:com.android.systemui\npackage:com.android.bluetoothmidiservice\npackage:io.kkzs\npackage:tv.danmaku.bili\npackage:com.android.captiveportallogin\npackage:org.geekbang.geekTime\n"}

 

APP管理

安装apk

  1. push apk 文件到 /data/local/tmp。

  2. 调用 pm install 安装。

  3. 删除 /data/local/tmp 下的对应 apk 文件。

卸载apk

adb uninstall com.ss.android.ugc.aweme

启动app

d.app_start("com.ss.android.ugc.aweme")

停止app

d.app_stop("com.ss.android.ugc.aweme") 

清除app数据

d.app_clear('com.ss.android.ugc.aweme')

获取当前的应用信息

d.app_current()

{'package': 'com.ss.android.ugc.aweme', 'activity': 'com.ss.android.ugc.aweme.splash.SplashActivity'}

停止所有的app

d.app_stop_all()

获得app信息

d.app_info("com.examples.demo")

{"data":{"packageName":"com.ss.android.ugc.aweme","mainActivity":"com.ss.android.ugc.aweme.main.MainActivity","label":"抖音短视频","versionName":"10.6.0","versionCode":100601,"size":82302370},"success":true}

获得所有正在运行的app

d.app_list_running()

['com.android.gallery3d', 'com.android.defcontainer', 'com.android.keychain', 'com.android.statementservice', 'com.android.shell', 'com.android.documentsui', 'com.ss.android.ugc.aweme', 'com.android.externalstorage', 'com.android.phone', 'com.tencent.mm', 'com.android.systemui']

查看应用列表 

d.app_list() 

支持的参数

支持的过滤参数如下:

参数显示列表
所有应用
-f显示应用关联的 apk 文件
-d只显示 disabled 的应用
-e只显示 enabled 的应用
-s只显示系统应用
-3只显示第三方应用
-i显示应用的 installer
-u包含已卸载应用
<FILTER>包名包含 <FILTER> 字符串

 

 

与APP的交互

手势交互

按压

d.press("back")

滑动

d.swipe(sx, sy, ex, ey)

点击

d.click(x, y)

对元素进行监控

注册监控

d.watcher("ANR").when(xpath="ANR").when("Force Close").click()

开启监控

d.watcher.start(2.0) # 默认监控间隔2.0s

停止监控

d.watcher.stop()

截图

im = d(text="Settings").screenshot()
im.save("settings.jpg")

视频录制

d.screenrecord('output.mp4')

time.sleep(10)
# or do something else

d.screenrecord.stop() # 停止录制后,output.mp4文件才能打开

图像匹配

imdata = "target.png" # 也可以是URL, PIL.Image或OpenCV打开的图像

d.image.match(imdata) 
# 匹配待查找的图片,立刻返回一个结果
# 返回一个dict, eg: {"similarity": 0.9, "point": [200, 300]}

d.image.click(imdata, timeout=20.0)
# 在20s的时间内调用match轮询查找图片,当similarity>0.9时,执行点击操作

 

标签:方式,ss,换种,app,npackage,aweme,手机,android,com
来源: https://blog.csdn.net/longjuanfengzc/article/details/109922438

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有