转载请标明出处: http://write.blog.csdn.net/postedit/45721779 作者:skay
一般项目中有防盗版的需求,必须是正版软件才能使用,这就需要获取当前安装包的签名信息和提前规定的签名,Md5值做验证,或者发布时候要检验apk签名信息以防止发错包,造成不必要的损失。
获取签名信息,通过遍历已安装的apk 获得安装过的对应apk是否与已知apk签名一致
,包名你也可以指定任意已安装过的apk,可以获取第三方apk的签名.
/**
* 获取签名信息
*
* @param aContext
* Context
* @return 签名String
*/
@SuppressWarnings("unused")
private byte[] getSign(String mPakgeName) {
List<PackageInfo> apps = pManager.getInstalledPackages(PackageManager.GET_SIGNATURES);
Iterator<PackageInfo> iter = apps.iterator();
PackageInfo info;
while (iter.hasNext()) {
info = iter.next();
if (TextUtils.equals(info.packageName, mPakgeName)) {
if