如何进行APK简单代码注入

一、前言

apk在未加密的情况下,通过反编译,得到smail文件。将需要注入代码注入即可。之后封装、签名即可!

二、制作apk

使用android studio生成一个简单的apk。使用默认代码即可。

package com.example.myapplication1;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;public class MainActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);    }}

生成apk 后,运行apk。

如何进行APK简单代码注入

三、反编译

1、打开androimanifest.xml文件,找到activity下的android:name后跟类。

如何进行APK简单代码注入

2、使用np管理器进行反编译,获取smail文件。

如何进行APK简单代码注入

文件内容如上。我们需要找到onCreate函数,该函数是创建页面所调用的一个函数。那么我们在return-void前,将我们所要注入的代码贴上即可。注入代码为一个弹窗提示。提示词为test。它的smail代码为

const-string v0, "test"const/4 v1, 0x0invoke-static {p0, v0, v1}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;move-result-object v0invoke-virtual {v0}, Landroid/widget/Toast;->show()V

填写到smail后,格式如下:

如何进行APK简单代码注入

插入的是一个完整方法。需要line加上1。同时弹窗是一个组件,需要在前面注册一下

如何进行APK简单代码注入

将3改成4。改完后整体代码

如何进行APK简单代码注入保存即可。自动编译签名。

四、测试结果

编译,签名后安装。

如何进行APK简单代码注入

成功弹窗。

看完上述内容,你们对如何进行APK简单代码注入有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

文章标题:如何进行APK简单代码注入,发布者:亿速云,转载请注明出处:https://worktile.com/kb/p/24026

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
亿速云亿速云认证作者
上一篇 2022年9月8日 下午10:54
下一篇 2022年9月8日 下午10:55

相关推荐

  • python找不到文件如何解决

    解决方法: 1、点击进入“此电脑”。 2、右击“此电脑”点击“属性”。 3、点击左侧“高级系统设置”。 4、选择“高级”点击“环境变量”。 5、双击“path”。 6、点击“新建”。 7、将python的路径安装进去即可。 读到这里,这篇“python找不到文件如何解决”文章已经介绍完毕,想要掌握这…

    2022年9月8日
    90000
  • windows的任务管理器如何打开

    打开任务管理器的多种方式 方法一:使用Ctrl+Shift+Esc组合键调出任务管理器。 方法二:用鼠标右键点击任务栏选择“任务管理器”, 方法三:使用组合键“Win+R”键打开运行对话框,输入taskmgr,回车,即打开 方法四:按顺序连续按住Ctrl、Alt和Delete键 方法五:直接找到Ta…

    2022年9月6日
    16600
  • 禁止SpringBoot在项目中使用Tomcat容器的原理是什么

    SpringBoot中的Tomcat容器 SpringBoot可以说是目前热门的Java Web框架了。它将开发者从繁重的xml解救了出来,让开发者在几分钟内就可以创建一个完整的Web服务,极大的提高了开发者的工作效率。Web容器技术是Web项目必不可少的组成部分,因为任Web项目都要借助容器技术来…

    2022年9月19日
    21100
  • mysql支持外键吗

    mysql支持外键。在MySQL中,外键主要用来建立主表与从表的关联关系,可以为两个表的数据建立连接,约束两个表中数据的一致性和完整性;当主表删除某条记录时,从表中与之对应的记录也必须有相应的改变。一个表可以有一个或多个外键,外键可以为空值,若不为空值,则每一个外键的值必须等于主表中主键的某个值;且…

    2022年6月29日
    24600
  • MySQL慢查询日志怎么设置

    一、概述 MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值(long_query_time,单位:秒)的SQL语句。默认情况下,MySQL不启动慢查询日志。本文简单介绍如何开启慢查询日志,如何用mysqldumpslow分析慢查询。 二、慢查询日志设置 …

    2022年9月15日
    46500
  • cad字体不显示和电脑有关系吗

    1、当我们打开CAD的时候,会出现如下图的情况,那就说明是咱们电脑上缺少了对应的字体,导致图纸显示不全。 2、当系统出现了上述提示的时候,就说明我们电脑上缺少了这些字体,但这个时候不要点确定, 因为点击了确定,就会用其他字体来替换,会导致图纸显示错误。 这里我们以这个字体为例, 3、我们打开浏览器,…

    2022年9月16日
    14700
  • 计算机系统中操作系统指的是什么

    在计算机系统中,操作系统是核心系统软件;其他的系统要运行在操作系统基础之上,操作系统是一组主管并控制计算机操作、运用和运行硬件、软件资源和提供公共服务来组织用户交互关联的系统软件程序。 本教程操作环境:windows10系统、DELL G3电脑。 在计算机系统中,操作系统是什么 在计算机系统中,操作…

    2022年9月18日
    21800
  • imazing下载超时如何解决

    imazing下载超时解决方法 1、imazing如果下载超时,我们可以先下载一个itunes。 2、因为itunes在安装时会帮我们下载一些imazing需要用到的组件,就能让我们下载imazing时减少一些时间。 3、下载安装完itunes之后,我们可以在本站重新下载imazing,避免是原下载…

    2022年9月15日
    71000
  • 如何用rank函数排名不重复

    用rank函数排名不重复的方法: 1、首先打开表格,进入你的表格。 2、然后在单元格中输入公式:=RANK(H2,H2:H47,0)可以看到名列前茅行43的排行。 3、然后将书本放在单元格右下角,然后向下拉。 4、最后就可以看到很多的重复排名了,但是没有第二和第三。 5、如果需要不重复就需要在ran…

    2022年8月30日
    2.0K00
  • App崩溃的6个常见原因是什么

    人们讨厌应用程序崩溃,尤其是是程序减速或卡死几秒钟这样的现象。根据Dimensional Research的一项调查,61%的用户希望程序在4秒内启动,而49%的用户希望在2秒内响应输入。 如果应用发生崩溃,冻结或报错等现象,53%的用户会将APP卸载。 无论您的对象是消费者还是企业,崩溃问题会令他…

    2022年9月2日
    1.1K00
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部