>如果有人篡改已安装的
Android应用程序(apk文件),是否在启动时完成了任何检查以确保应用程序的完整性不受损害?据我所知,在发布时没有检查,我正在尝试执行以下操作:
>我正在尝试计算已安装应用程序(apk文件)的SHA-1摘要.我知道apk文件就像一个zip文件.它由其他文件组成.但是,我将其视为任何其他文件(只是一个字节流)并尝试计算所有apk文件的SHA-1摘要.这种方法有什么问题吗?以下代码保持为null异常:
private static byte [] getSHA1FromFileContent(String filename)
{
try
{
MessageDigest digest = MessageDigest.getInstance("SHA-1");
//byte[] buffer = new byte[65536]; //created at start.
final FileInputStream fis = new FileInputStream(filename);
int n = 0;
byte[] buffer = null;
while (n != -1)
{
n = fis.read(buffer);
if (n > 0)
{
digest.update(buffer, 0, n);
}
}
byte[] digestResult = digest.digest();
return digestResult;
}
catch (Ex