
APKTool是GOOGLE提供的APK编译工具,能够反编译及回编译apk,同时安装反编译系统apk所需要的framework-res框架,清理上次反编译文件夹等功能。需要java支持。
常见命令:
decode
该命令用于进行反编译apk文件,一般用法为
apktool d <fileapk> <dir>
<fileapk>代表了要反编译的apk文件的路径,最好写绝对路径,比如C:\MusicPlayerapk
<dir>代表了反编译后的文件的存储位置,比如C:\MusicPlayer
如果你给定的<dir>已经存在,那么输入完该命令后会提示你,并且无法执行,需要你重新修改命令加入-f指令
apktool d –f <fileapk> <dir>
这样就会强行覆盖已经存在的文件
build
该命令用于编译修改好的文件,一般用法为
apktool b <dir>
这里的<dir>就是刚才你反编译时输入的<dir>(如C:\MusicPlayer),输入这行命令后,如果一切正常,你会发现C:\MusicPlayer内多了2个文件夹build和dist,其中分别存储着编译过程中逐个编译的文件以及最终打包的apk文件。
install
install-framework命令用于为APKTool安装特定的framework-resapk文件,以方便进行反编译一些与ROM相互依赖的APK文件。
Android根据文件类型MimeType来判断是否d起安装页面
总体说来就两件事情拷贝APK和解析APK,解析APK主要是解析AndroidManifestxml,以便获得它的安装信息。在安装的过程中还会这个应用分配Linux用 户ID和Linux用户组ID(以便它可以在系统中获取合适的运行权限)。
以上就是对Android安装流程的一个介绍。
ADB(Android Debug Bridge)是Android
提供的一个通用的调试工具,借助这个工具,我们可以很好的调试开发的程序,adbexe在你安装的android的sdk开发包platform-tools目录下。
ADB是一个C/S架构的应用程序,由三部分组成:
1)adb client, 运行在PC上(为DDMS,即IDE工作)
2)adb daemon(守护进程),运行于Emulator(为与Emulator中的VM交互工作);
3)adb server(服务进程),运行在PC(任务管理器上有),管理着adb client和adb
daemon的通信。
server与client通信的端口是是5037,adb
server会与emulator交互的,使用的端口有两个,一个是5554专门用于与Emulator实例的连接,那么数据可以从Emulator转发给IDE控制台了,另一个则是5555,专门与adb
daemon连接为后面调试使用。
adb使用方法:
adb [-d|-e|-s ]
当你发出一个命令,系统启用Android客户端。客户端并不与模拟器实例相关,所以如果双服务器/设备是运行中的,你需要用-d选项去为应被控制的命令确定目标实例。关于使用这个选项的更多信息,可以查看模拟器/设备实例术语控制命令。
1、查询模拟器/设备实例
在发布adb命令之前,有必要知道什么样的模拟器/设备实例与adb服务器是相连的。可以通过使用 devices
命令来得到一系列相关联的模拟器/设备
adbdevices
2、安装应用到模拟器/设备:
你可以使用adb从你的开发电脑上复制一个应用程序,并且将其安装在一个模拟器/设备实例。
像这样做,使用install命令。这个install命令要求你必须指定你所要安装的apk文件的路径:
adbinstall
例如:Weibo_411apk是在我的C盘中,
C:\>adbinstallweibo_411-apk
3、卸载应用程序:
adbuninstall
注意:卸载软件时,卸载的是包名,后面跟的是包的名字,而不是APK
4、从模拟器/设备中拷入或拷出文件:
可以使用adbpull、push命令将文件从模拟器/设备中拷贝出来或从电脑拷入。
adbpull
用pull命令可以把设备(手机)上的文件或者文件夹复制到本机电脑
adbpush
用push命令可以把本机电脑上的文件或者文件夹复制到设备(手机)
5、启动Linux命令界面shell
adbshell
Android本来就是一个linux *** 作系统,通过上面的命令,就可以进入设备或模拟器的shell环境中,所以大部分都是linux的命令,如mkdir,ls,netstat,mount
等。
主要介绍几个Android特有的。
Getprop:返回Android的所有系统属性。
Getevent:打印所有的键盘和触摸事件
Logcat:输出日志
LS:用于显示目录内容
6、查看bug报告:
adb bugreport
7、记录无线通讯日志:
一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录:
adb shell
logcat -b radio
8、获取设备的ID和序列号:
adb get-product
adb get-serialno
以上就是关于linux apktool怎么使用全部的内容,包括:linux apktool怎么使用、Apk安装和解析流程、什么是adb命令行等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)