『 转载 』android利用PNG图片反签名
一、修改apk图标在AndroidManifest.xml文件中
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.qihoo.test.first">
<application android:allowBackup="true" android:debuggable="true" android:icon="@drawable/app_icon" android:label="@string/app_name" android:theme="@style/LookupTheme">
<activity android:label="@string/app_name" android:name="com.qihoo.test.first.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
将app_icon设置成自己图标的名字。
android图标的位置在 res\drawable-hdpi中,随便设置一个,这里我选择hdpi这个。设置如下
http://joychou-blog.stor.sinaapp.com/299805047.png
这样就可以编译成功。
http://joychou-blog.stor.sinaapp.com/258371656.jpg
二、反签名原理
在android中,apk的图标格式只能为PNG格式。但是在4.4版本之前,android系统只是验证它的后缀名是否为PNG,
而不会验证图片本身内容。
所以我们可以将一个非png格式的图标 后缀名改为png,这样就可以用eclipse编译成功。
但是在签名的时候,会验证图标是否是png格式,不只是单纯的从后缀名来判断,而是从文件格式(hex)来判断。
如果不是png图片,就是出现 “libpng error: Not a PNG file”错误信息。
http://img.blog.csdn.net/20141010114819529
三、过反签名
至于要怎么过这个,就很简单了。
http://joychou-blog.stor.sinaapp.com/3580064929.jpg
用file命令,如果为icon格式,那就改成icon即可。
如果不是icon,是其他格式的话,就需要用一个png的图片格式,文件名不改变。
四、PS
PNG图片格式:http://joychou.sinaapp.com/index.php/Misc/PNG-FileFormat.html
不过最后有个问题:icon文件格式是个怎样的文件格式 = =。
改成icon是怎么通过验证签名的?有知道的大牛请告知下。唔
原帖:http://www.joychou.org/index.php/Android/Android-Anti-Sign.html
沙发,膜拜了,看不懂 膜拜玩安卓的,看不懂 说了些什么啊?没看懂 一知半解。。。。 膜拜玩安卓的,看不懂 这样也行啊,厉害! 学习下!!!不错! 看不懂。。。。。。 高德地图就是这样,反编译征程,回编译的时候就会如上提示,应该是图片的问题,可是一直无法搞定,唔
页:
[1]