为了向经典的"Hello, World"致敬,咱们也从一个简单的程序开始HelloWorld.apk。当你把这个APK安装到手机上运行后,在屏幕上就显示一行文字"Hello, World!"。如今咱们想要经过注入的方式把”Hello World~!”修改成中文的”你好世界”。html
1.反编译android
Dos命令提示行 输入 apktool.bat d HelloWorld.apksegmentfault
这条命令运行完后,在当前目录下会生成一个名为HelloActivity的目录。
该目录的结构为(名称后跟/表示这是一个目录):编辑器
HelloWorld/
|--------------AndroidManifest.xml
|--------------apktool.yml
|--------------res/
|--------------smali/学习
2.代码注入加密
打开 smaili目录找到须要注入的代码,MainActivity.smali。用文本编辑器打开该文件。搜索关键字”Hello World”找到代码spa
修改成”你好世界”。(这里咱们也能够插入咱们的代码,感兴趣的朋友能够学习下 smali语法:http://pallergabor.uw.hu/androidblog/dalvik_opcodes.html)命令行
3.从新打包生成1.APKcode
保存文件。命令行 apktool.bat b HelloWorld 1.apk 生成APK文件。xml
4.给新生成的apk文件签名
因为咱们从新打包的apk文件,签名已经丢失,因此咱们要从新签名,应用才能被安装。 这里咱们用到了jdk/bin/jarsigner.exe。
命令行输入jarsigner -keystore E:\keystore\1.keystore -storepass 123123 -verbose 1.apk zs.keystore
说明 jarsigner -keystore [签名文件路径] -storepass [密码] -verbose [须要签名文件路径] [签名文件别名]
5.删除手机上原有的HelloWorld,从新安装咱们修改后的apk文件。
更多内容,期待您的探索,请关注爱加密,让您精彩不断!
爱加密官方地址:http://www.ijiami.cn/