测试过程中发现,对于签名后的文件。当用压缩包直接打开apk然后删除apk中的一个文件,比如html文件,apk重新安装是可以的。
但是如果添加或者修改文件内容比如html文件,apk就无法安装了。
获取apk签名文件的关键代码如下:
public static String getCertFingerPrintFromClient(Context context) throws NameNotFoundException, NoSuchAlgorithmException{
PackageManager manager = context.getPackageManager();
PackageInfo packageInfo = manager.getPackageInfo(context.getPackageName(), PackageManager.GET_SIGNATURES);
Signature[] signs = packageInfo.signatures;
Signature sign = signs[0];
MessageDigest messageDigest = MessageDigest.getInstance("SHA1");
messageDigest.update(sign.toByteArray());
String hashValue = toHex(messageDigest.digest());
return hashValue;
}
本文详细探讨了Android APK签名的重要性,包括签名比对、代码混淆、反编译防护及签名文件的获取方法。同时,文章提供了关键代码示例,帮助开发者理解如何确保应用的安全性。

676

被折叠的 条评论
为什么被折叠?



