一、前言
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。
三、反编译
1、打开androimanifest.xml文件,找到activity下的android:name后跟类。
2、使用np管理器进行反编译,获取smail文件。
文件内容如上。我们需要找到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后,格式如下:
插入的是一个完整方法。需要line加上1。同时弹窗是一个组件,需要在前面注册一下
将3改成4。改完后整体代码
保存即可。自动编译签名。
四、测试结果
编译,签名后安装。
成功弹窗。
看完上述内容,你们对如何进行APK简单代码注入有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
文章标题:如何进行APK简单代码注入,发布者:亿速云,转载请注明出处:https://worktile.com/kb/p/24026