adb详细教程(四)-使用adb启动应用、关闭应用、清空应用数据、获取设备已安装应用列表

news2024/11/20 8:28:48
  • adb对于安卓移动端来说,是个非常重要的调试工具。
  • 本篇介绍常用的adb指令

文章目录

    • 一、启动应用:adb shell am start
    • 二、使用浏览器打开指定网址:adb shell am start
    • 三、杀死应用进程adb shell am force-stop/adb shell am kill
    • 四、删除应用所有数据:adb shell pm clear package
    • 五、获取设备已安装应用列表:adb shell pm list package
  • 附录:【adb详细教程】系列文章目录

(adb的安装包我已上传到了网盘。可以直接搜索公众号【软件测试必备技能】或 滑到文章底部,点击公众号卡片扫描二维码,前往关注领取。)

  • ADB的安装与设置可以参考博客之前的文章:
    adb详细教程(一)-下载安装与环境变量配置
    adb详细教程(二)-开启手机开发者模式、通过adb连接安卓设备
  • 使用ADB的安装、卸载应用之前文章专门介绍过就不再赘述
    adb详细教程(三)-使用adb安装app、卸载app

一、启动应用:adb shell am start

  • 通过adb指令可以直接启动应用,但需要知道应用的启动activity的完整路径。
  • 指令模板如下:
    adb shell am start {包名}/{启动activity}
    

如果不知道应用的启动activity,可以尝试使用下面方法:

  1. 使用adb指令“adb logcat -c”清空日志
  2. 再使用adb指令“adb logcat ActivityManager:I *:S”,这样会打印出设备上运行的activity信息。
  3. 启动应用
  4. 因为前面执行过清空日志的指令,所以很容易找到应用第一个启动的activity
    在这里插入图片描述
  • 有了包名和启动activity之后,就可以运行启动应用的指令:
    adb shell am start com.tencent.qqmusic/com.tencent.qqmusic.activity.AppStarterActivity
    
    在这里插入图片描述

二、使用浏览器打开指定网址:adb shell am start

  • 可以通过adb指令,命令设备通过浏览器打开指定网址
    adb shell am start -a android.intent.action.VIEW -d {URL}
    
  • 示例:
    adb shell am start -a android.intent.action.VIEW -d https://www.csdn.net/
    
    • 成功后会显示结果在这里插入图片描述

三、杀死应用进程adb shell am force-stop/adb shell am kill

  • 可以通过adb指令,杀死设备上应用的进程
  1. 杀死指定应用的进程
    adb shell am force-stop {包名}
    
  2. 终止所有后台进程。
    adb shell am kill-all
    
  • 示例:
    adb shell am force-stop com.tencent.qqmusic
    
    • 这条指令没有显示结果,但如果此时设备上正在运行指定应用,就可以看到应用已经被关闭了
      在这里插入图片描述

四、删除应用所有数据:adb shell pm clear package

  • 可以通过adb指令,删除应用所有数据:
    adb shell pm clear {包名}
    
  • 示例
    adb shell pm clear com.tencent.qqmusic
    
    • 成功之后会打印“Success”在这里插入图片描述

五、获取设备已安装应用列表:adb shell pm list package

  • 可以通过adb指令,获取设备已安装应用列表:
    adb shell pm list packages {选项} {关键字} 
    
  • {选项} 和{关键字} 非必填
  • 如果填写了{关键字},将会输出包名包含关键字的应用。
  • {选项}具体有如下几种:
    • -f:查看关联文件。
    • -d:进行过滤以仅显示已停用的软件包。
    • -e:进行过滤以仅显示已启用的软件包。
    • -s:进行过滤以仅显示系统软件包。
    • -3:进行过滤以仅显示第三方软件包。
    • -i:查看软件包的安装程序。
    • -u:包括已卸载的软件包。
    • –user user_id:要查询的用户空间。
  • 示例:
    • 按关键字搜索
      adb shell pm list packages samsung
      
    • 打印出的应用列表,都包含了关键字“samsung”在这里插入图片描述

附录:【adb详细教程】系列文章目录

adb详细教程(一)-下载安装与环境变量配置
adb详细教程(二)-开启手机开发者模式、通过adb连接安卓设备
adb详细教程(三)-使用adb安装app、卸载app
—————————————————————————————————
adb安装包我已上传到了本人运营的博客同名公众号【软件测试必备技能】。公众也会不定期会上传测试相关资料,有需要可以前往领取。

有需要可点击文章下方二维码,前往领取~在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1064498.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【c++_containers】10分钟带你学会list

前言 链表作为一个像是用“链子”链接起来的容器,在数据的存储等方面极为便捷。虽然单链表单独在实际的应用中没用什么作用,但是当他可以结合其他结构,比如哈希桶之类的。不过今天学习的list其实是一个带头双向链表。 言归正传,让…

FFmpeg 基础模块:容器相关的 API 操作

目录 AVFormat 模块 AVFormat 前处理部分 AVFormat 读写处理部分 小结 思考 FFmpeg 目录中包含了 FFmpeg 库代码目录、构建工程目录、自测子系统目录等,具体内容如下: 现在你知道 FFmpeg 的源代码目录中都包含了哪些内容,在之后使用 FFm…

Springcloud支付模块

客户端消费者80 order 微服务提供者8001 payment 订单模块可以调动支付模块 步骤: 1、建moudle 2、改写pom 3、写yml 4、主启类 5、业务类

overleaf在线编辑工具使用教程

文章目录 1 用 orcid注册overleaf获取模板2 使用模板 1 用 orcid注册overleaf获取模板 通常来说,在期刊投稿网站information for author中找template 。下载压缩包后上传到over leaf中。 加入找不到官方模板,用overleaf中的 2 使用模板 .bib文件&…

Go语言中的指针介绍

Go语言中的指针 文章目录 Go语言中的指针一、Go语言中的指针介绍1.1 指针介绍1.2 基本语法1.3 声明和初始化1.4 Go 指针的3个重要概念1.4.1 指针地址(Pointer Address)1.4.2 指针类型(Pointer Type)1.4.3 指针取值(Poi…

【CMU15-445 Part-15】Query Planning Optimization II

Part15-Query Planning & Optimization II Selection Statistics 维护每张表中的基本主要信息也就是tuple数量 N R N_R NR​以及每个属性中不同值的数量 V ( A , R ) V(A,R) V(A,R), N R N_R NR​关系R中的元组数量,单独维护,不能用pag…

Elasticsearch:ES|QL 查询语言简介

警告:此功能处于技术预览阶段,可能会在未来版本中更改或删除。 Elastic 将尽最大努力解决任何问题,但技术预览版中的功能不受官方 GA 功能的支持 SLA 的约束。在目前的 Elastic Stack 8.10 中此功能还没有提供。 Elasticsearch 查询语言 (ES|…

3D孪生场景搭建:3D漫游

上一篇 文章介绍了如何使用 NSDT 编辑器 制作模拟仿真应用场景,今天这篇文章将介绍如何使用NSDT 编辑器 设置3D漫游。 1、什么是3D漫游 3D漫游是指基于3D技术,将用户带入一个虚拟的三维环境中,通过交互式的手段,让用户可以自由地…

RK3568平台开发系列讲解(AI篇)车辆检测车道线识别可行驶区域分割 模型对比检测结果

🚀返回专栏总目录 文章目录 模型对比检测结果 沉淀、分享、成长,让自己和他人都能有所收获!😄 📢在当今的自动驾驶领域,车辆检测、车道线识别,可行驶区域分割等任务起着至关重要的作用。车辆检测…

Labview 实战 99乘法表

基于新手小白,使用Labview实现99乘法表,敢于发表自己的一点方法,还请各位大侠放过! 如下: 运行效果如下: 思路为:将要显示出来的数据,全部转换为字符串形式,再塞入到数组…

搭建在线python运行环境

常遇到需要一个小工具,比如生成作息时间表,今天就搭建一个可在线使用的python运行环境 当然也可以交给ChatGPT完成 1、安装canda wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2019.03-Linux-x86_64.shyum install -y bzi…

黑马点评-01基于Redis实现短信登陆的功能

环境准备 当前模型 nginx服务器的作用 手机或者app端向nginx服务器发起请求,nginx基于七层模型走的是HTTP协议,可以实现基于Lua直接绕开tomcat访问Redis nginx也可以作为静态资源服务器,轻松扛下上万并发并负载均衡到下游的tomcat服务器,利用集群支撑起整个项目 使用nginx部…

volatile使用方法

volatile使用方法 编译优化。使用等级3的话,可能将优化了一些变量。 这为什么会开启等第三呢?这是关于单片机的内存容量比较小,所以开启优化的话,可以可以省一些空间,但是如果。会出现些变量的问题,需要通过…

基于A4988/DRV8825的四路步进电机驱动器

概述 简化板的CNC sheild V3.0,仅保留步进电机速度与方向的控制引脚STEP/DIR、使能端EN、芯片供电VCC\GND,共计11个引脚。PCB四周开设四个M3通孔,以便于安装固定。此外,将板载的焊死的保险丝更改为可更换的保险座保险丝&#xff…

Linux系统之安装cook菜谱工具

Linux系统之安装cook菜谱工具 一、cook菜谱工具介绍二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、检查本地环境3.1 检查本地操作系统版本3.2 检查系统内核版本3.3 检查系统是否安装pnpm 四、部署Node.js环境4.1 下载Node.js安装包4.2 解压Node.js安装包4.3 复制二进制…

蓝桥杯每日一题2023.10.6

题目描述 门牌制作 - 蓝桥云课 (lanqiao.cn) 题目分析 #include<bits/stdc.h> using namespace std; int ans; int main() {for(int i 1; i < 2020; i ){int x i;while(x){int a x % 10;if(a 2)ans ;x / 10;}}cout << ans;return 0; } 题目描述 既约分数…

Python3操作Redis最新版|CRUD基本操作(保姆级)

Python3中类的高级语法及实战 Python3(基础|高级)语法实战(|多线程|多进程|线程池|进程池技术)|多线程安全问题解决方案 Python3数据科学包系列(一):数据分析实战 Python3数据科学包系列(二):数据分析实战 Python3数据科学包系列(三):数据分析实战 Win11查看安装的Python路…

数据结构P46(2-1~2-4)

2-1编写算法查找顺序表中值最小的结点&#xff0c;并删除该结点 #include <stdio.h> #include <stdlib.h> typedef int DataType; struct List {int Max;//最大元素 int n;//实际元素个数 DataType *elem;//首地址 }; typedef struct List*SeqList;//顺序表类型定…

一年一度的国庆节又结束了

这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题&#xff0c;有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个…

Iphone文件传到电脑用什么软件,看这里

在数字化时代&#xff0c;文件传输已经成为我们日常生活中不可或缺的一部分。然而&#xff0c;苹果用户在将手机文件传输到电脑时&#xff0c;往往会面临一些困扰。曾经的“文件传输助手”并不能完全满足用户的需求。于是&#xff0c;很多人开始寻找更便捷的解决方案。在本文中…