Android

第二十二讲 安卓Apk布局修改从入门到精通

本次教程的目标是,学会将安卓apk反向工程后,如何找到需要修改的布局、对布局修改、对布局进行美化,如何隐藏布局(按钮等),以及如何在界面上添加按钮并响应点击事件,添加图片,添加文本框等控件,认识不同类型的布局和他们的特点。并熟悉常用的布局属性及其作用。

课程大纲

本次教程的目标是,学会将安卓apk反向工程后,如何找到需要修改的布局、对布局修改、对布局进行美化,如何隐藏布局(按钮等),以及如何在界面上添加按钮并响应点击事件,添加图片,添加文本框等控件,认识不同类型的布局和他们的特点。并熟悉常用的布局属性及其作用。

需要的软件

《安卓抓包大师》,本教程用来示范修改的apk,从 安卓修改大师的工具箱/网络抓包下载
《Android Studio》 用来修改代码和布局的专业开发工具
准备工作

下载本次教程用来修改布局的安卓抓包大师,电脑上面安装安卓修改大师和雷电9模拟器,电脑安装并配置Android Studio开发工具(您可以直接在安卓修改大师里面的编辑器里面修改,不过建议用Android Studio进行代码和布局的修改,因为他提供了良好的代码提示功能)。将Android Studio和安卓修改大师进行绑定。将上述安卓抓包大师用安卓修改大师进行反编译,做好布局修改的准备工作。
如何定位需要修改的布局文件

1、直接搜索界面上面的文字进行定位
2、用安卓修改大师抓取界面,获取资源id或者直接定位
3、分析代码定位(类源代码中搜索 R.layout.)
如何对布局进行修改

动手实验:
1、界面上添加一个文本框,一个图片和一个按钮
2、按钮点击事件里面绑定安卓修改大师的弹窗插件,点击后弹窗(下一节主要内容)
如何给控件绑定点击事件

1、任何控件都可以添加android:onClick属性来绑定点击事件(图片,文件框,按钮),该属性对应的是处理点击事件的自定义方法名称,例如 btnOnClick
2、在当前布局调用的Activity页面中,添加下面代码来响应事件
.method public btnOnClick(Landroid/view/View;)V
.locals 10
#这里添加你的任何逻辑
return-void
.end method
3、用安卓修改大师的插件功能,手工方式添加插件代码到该方法里面,编译后查看效果

Views :22
android studio

Source by deionCube

Mourad ELGORMA

Fondateur de summarynetworks, passionné des nouvelles technologies et des métiers de Réseautique , Master en réseaux et système de télécommunications. ,j’ai affaire à Pascal, Delphi, Java, MATLAB, php …Connaissance du protocole TCP / IP, des applications Ethernet, des WLAN …Planification, installation et dépannage de problèmes de réseau informatique……Installez, configurez et dépannez les périphériques Cisco IOS. Surveillez les performances du réseau et isolez les défaillances du réseau. VLANs, protocoles de routage (RIPv2, EIGRP, OSPF.)…..Manipuler des systèmes embarqués (matériel et logiciel ex: Beaglebone Black)…Linux (Ubuntu, kali, serveur Mandriva Fedora, …). Microsoft (Windows, Windows Server 2003). ……Paquet tracer, GNS3, VMware Workstation, Virtual Box, Filezilla (client / serveur), EasyPhp, serveur Wamp,Le système de gestion WORDPRESS………Installation des caméras de surveillance ( technologie hikvision DVR………..). ,

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *