adb devices 查询电脑已连接的设备 adb shell pm list packages 列出目标设备中已安装的应用程序包 adb shell pm list packages -f 列出目标设备中已安装的应用程序包的具体位置 adb uninstall xxx 卸载或删除的应用包xxx adb pull /data/app/com.tencent.tbs-1/base.apk 将手机已安装程序的apk下载到你所在的文件夹
Android 设备底层是linux系统。shell 是linux 系统的字符交互界面。 常用的shell命令:
参考文章 https://github.com/mzlogin/awesome-adb
开源也两年了,没想到自己在宣传.NetCore全栈的时候,也慢慢的做出了几个产品,毕竟也是一行一行的敲出来的,也是一天一夜的改出来的,希望每个人都能在自己学习中培养自己的踏实,稳健,成熟的品性。
adb start-server 启动adb 服务,基本不会用到,因为只要设备连接正确,会自动启动adb server
uiautomator是Google提供的用来做安卓自动化测试的一个Java库。功能很强,可以对第三方App进行测试,获取屏幕上任意一个APP的任意一个控件属性,并对其进行任意操作,但有两个缺点:
点击工具栏的运行 -> 运行到浏览器 -> 选择浏览器,即可体验 uni-app 的 web 版。
最新的 Android 4.1(Jelly Bean)版本在上周的 Google I / O 大会上发布了,它有一大堆新功能和改进。 其中一个有趣的功能是应用程序加密,除了简短的说明还没有任何细节:“从 Jelly Bean 版本起,Google Play 中的付费应用程序在分发和存储之前,会使用设备特定的密钥加密”。缺乏细节当然会引起猜测,有些人甚至担心,当他们使用一个新的设备时必须回购他们的付费应用程序。 在本文中,我们将介绍如何在操作系统中实施应用加密,展示如何在不通过 Google Play 的情况下安装加密的应用,并了解 Google Play 如何提供加密的应用。
一个手机不可能同时安装1000个apk,需要考虑每50-100个作为一组,进行安装,验证后卸载测试。
gradlew 下面全是针对 windows 操作系统的。如果是 Linux / Mac 请直接用 ./ 前缀。
Aadroid的应用管理主要由PMS(PackageManagerService)来负责管理;上层由PackageManager来进行管理,通过PM我们可以得到设备上的所有安装包信息,包括未安装和安装过的, 未安装的包信息采用反射和未暴露的API,也可以进行深度解析得到我们想要的信息。而应用的安装和卸载也由PM来负责。
本文是我的关于如何开始Android逆向系列文章的第一部分。在文末提供了一个文档,你可以根据该文档说明部署同我一样的实验环境。
adb bugreport : 打印dumpsys、dumpstate、logcat的输出,也是用于分析错误
Unity3D打包android应用程序时,如果不对DLL加密,很容易被反编译,导致代码的泄露。通常的做法是通过加密DLL或者对代码进行混淆。本文的所要探讨的是通过加密的方式来对DLL进行保护,并详细记录加密的操作过程。
输入命令 adb shell pm list package 这样会显示所用在你手机上程序的包名,比如我要导出一个包名为 com.smarteye.mpu 的apk,通过 adb shell pm path xxx 找到这个apk的本机备份路径
说到 ADB 大家应该都不陌生,即 Android Debug Bridge,Android 调试桥,身为 Android 开发的我们,熟练使用 ADB 命令将会大大提升我们的开发效率, ADB 的命令有很多,今天就来整理下我在开发常用到的一些 ADB 命令。
在测试APP时,我们常常会用到adb命令来协助测试,那么adb命令到底是什么?有什么用?怎么用?
针对移动端 Android 的测试, adb 命令是很重要的一个点,必须将常用的 adb 命令熟记于心, 将会为 Android 测试带来很大的方便,其中很多命令将会用于自动化测试的脚本当中。
近日开始了移动端自动化测试的学习之路,决定在学习的过程中进行笔记,总结学习,印象或许会深刻一些。
ADB(Android debug bridge)是一个客户端-服务器端程序,其中客户端是你用来操作的电脑,服务器端是android设备。先说安装方法,电脑上需要安装客户端。客户端包含在SDK里。设备上不需要安装,只需要在手机上打开选项-设置-应用程序-USB调试(4.0+:设备-开发人员选项)。adb有各个系统的版本:Liunx,Mac,Windows,根据你自己的操作系统来选择要下载的Android SDK就可以使用adb命令了。 如下解释下ADB常用的几个命令
身为Android开发,可能好多人只知道配置java环境变量,但很多人不知道Android环境变量,下面我就来记录一下。 配置Android环境变量后我们可做什么 使用AndroidStudio自带的Terminal命令行工具。 或在cmd命令行工具中进行某些android操作。 在linux或windows系统中用命令进行打包操作。 在Terminal中使用adb和gradle命令。 环境变量配置 在系统变量中新建一个变量名字为ANDROID_HOME的变量,值为你的sdk目录。
一.adb服务相关 1.启动服务 adb start-server 2.终止服务 adb kill-server 3.远程连接云手机 adb connect 云手机ip+端口 二.连接设备相关 1.查看连接设备 adb devices 2.重启设备 adb reboot [bootloader|recovery] #可选参数进入bootloader(刷机模式)或recovery(恢复模式) 三.apk相关 1、安装apk adb install app的本地绝对路径 adb install -r app的本
下面代码段中PackageManager、PackageInfo、ApplicationInfo均同上面一致。
ADB:Android Debug Bridge,安卓调试桥,是用的最多的一种命令行工具,它能够在电脑端和安卓支持的设备端进行通信,其通信方式有两种:USB或者TCP/IP。
因为家中有一台小米电视机,但是平时使用起来体验很差(1G内存,8G存储,CPU型号Cortex A53 4核心 1.5GHz),如今视频平台很多,Bilibili、爱奇艺、优酷、腾讯视频、芒果TV 等平台。很多视频通过小米电视找不到,一部分原因是小米电视机的界面太炫丽,导致家中老人不太会操作,就是我用起来都觉得麻烦。
ADB,中文名安卓调试桥,它是一种功能多样的命令行工具,可用于执行各种设备操作(例如安装和调试应用),并提供对 Unix shell(可用来在设备上运行各种命令)的访问权限。它是一种客户端-服务器程序,包括以下三个组件:
ADB的全称是Android Debug Bridge,是一个与模拟器或者连接设备通讯的桥梁。ADB是CS结构包含三个部分:
在上一篇文章Android包管理机制之PackageInstaller安装APK中,我们学习了PackageInstaller是如何安装APK的,最后会将APK的信息交由PMS处理。那么PMS是如何处理的呢?主要是APK的复制和安装,由于公号文章字数的限制,这篇文章只能介绍 PMS处理APK的复制,APK安装过程会在后续文章讲解。
前 3 篇文章给大家讲解了 Appium 环境安装,Appium 理念以及实现方式(四大点),第一个 app 自动化脚本。
调试Android程序时,我们经常需要使用adb shell命令。adb是Android Debug Bridge的缩写,它充当调试桥梁的作用,就像一条连接开发机和设备之间的桥梁。
Android Print API Android默认实现了打印的框架,使用PrintManager+PrintManagerService可以轻松实现打印功能,具体的example可以参考https://developer.android.com/training/printing/index.html 打印功能作为一个feature,在一些定制的Android系统(包括Hikey960)上包括Android TV系统(包括小米盒子和Nvidia Shield),是被裁减掉的。裁减这个功能的系统,系统
如果只有一个设备/模拟器连接时,可以省略掉 [-d|-e|-s <serial-number>] 这一部分,直接使用 adb <command>。
hide命令:系统会发送广播 android.intent.action.PACKAGE_REMOVED,data数据并不会删除 unhide命令:系统会发送广播android.intent.action.PACKAGE_ADDED,data数据不会删除
查看应用列表 语法格式 adb shell pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [--user USER_ID] [FILTER] 命令行参数列表 参数 显示列表 无 所有应用 -f 显示应用关联的 apk 文件 -d 只显示 disabled 的应用 -e 只显示 enabled 的应用 -s 只显示系统应用 -3 只显示第三方应用 -i 显示应用的 installer -u 包含已卸载应用 <FILTER> 包名包含<FILTER>的字
众所周知,Android应用最终是打包成.apk格式(其实就是一个压缩包),然后安装至手机并运行的。其中APK是Android Package的缩写。
在本系列的前面文章中,我介绍了PackageInstaller的初始化和安装APK过程、PMS处理APK的安装和PMS的创建过程,这些文章中经常会涉及到一个类,那就是PackageParser,它用来在APK的安装过程中解析APK,那么APK是如何被解析的呢?这篇文章会给你答案。
应用安装在 Android 系统中后 , 普通应用 会安装到 /data/app/ 目录下 ;
大家好,又见面了,我是你们的朋友全栈君。 adb是什么?:adb的全称为Android Debug Bridge,就是起到调试桥的作用。通过adb我们可以在Eclipse中方面通过DDMS来
我相信做Android开发的朋友都用过ADB命令,但是也只是限于安装应用push文件和设备重启相关,更深的就不知道了,其实我们完全可以了解多一点,有一些不常用的场景我们至少应该知道它可以做到,比如,我们知道adb install 却不知道adb shell am start。前者是用来安装软件,后者用来打开软件,后者的一个使用场景让我对他重视:公司定制Android系统,在调试屏幕的时候要看是否满屏验证驱动是否正常,比较麻烦的做法是要拿到Android开发者手里用eclipse或者其他ide安装打开。显然相对于驱动人员连上数据线使用adb命令要复杂得多。因此,了解多一点还是很有必要的。
安装就分为下面三个阶段,每个阶段可以做些什么工作,可以帮助我们优化安装流程,解决安装后的一些问题呢?
我们在 app 正式发布的时候一定会使用正式签名的方式来打包,这种方式只能生成唯一的一个包,但是如今的应用商店非常多,如:小米、OPPO、360、百度、豌豆荚、应用宝等等。而我们只有一个 apk 文件要投入到这么多的应用商店中去,如果你的公司不需要统计每个应用商店的实际下载使用量的话,那倒是不会有这样的问题。
静默安装 apk安装流程简析 installd进程意义 最近工作上遇到静默安装相关的内容,顺便学习一下apk安装的知识
阅读本文前最好阅读Android PMS处理APK的复制这篇文章,因为它和本篇文章本来是一篇文章,由于公号文章的字数限制,被拆分为了两篇文章,这一篇我们接着来学习PMS处理APK的安装。
这个里面主要存放的是常规下载的应用程序,可以看到都是以APK格式结尾的文件, 在这个文件夹下的程序为系统默认的组件,自己安装的软件将不会出现在这里,而是\data\文件夹中。
在不同的应用市场可能有不同的统计需求,需要为每个应用市场发布一个安装包,这里就引出了Android的多渠道打包。在安装包中添加不同的标识,以此区分各个渠道,方便统计app在市场的各种。
我们知道在Android N 中对其 ART做了比较大的变化。主要是同一程序的代码可能同时运行在本地机器码(编译)、解释和JIT(Just In Time)的混合运行模式,并且不同的用户,同一应用程序的代码,可能运行不同的编译代码。因为有了Profile-guided JIT/AOT Compilation,那么不同的用户行为对同一app可能会有不同的编译结果。N 上做此变化的其目的是为了在安装时间、内存占用、电池消耗和性能之间获得最好的折衷。
在调试应用程序时,Android SDK工具会自动对应用程序进行了签名。Eclipse的ADT插件和Ant编译工具都提供了两种签名模式——Debug模式和Release模式。 在开发和测试时,可以使用Debug模式。Debug模式下,编译工具使用内嵌在JDK中的Keytool工具来创建一个keystore和一个 key(包含公认的名字和密码)。在每次编译的时候,会使用这个Debug Key来为apk文件签名。由于密码是公认的所以每次编译的时候,并不需要提示你输入keystore和key密码。
Android程序的特点相比在于使用混淆方式打包,将包名、类名、函数名改成不易看懂的字母,从而使生成的apk小很多(android studio提供了release编译方式,使用proguard混淆),因此反编译apk最多的工作在于重构这些名称,这一点和pc上一致,对于android native程序(jni)则和pc上基本一致,不同之处在于常见的是arm汇编。
领取专属 10元无门槛券
手把手带您无忧上云