android 获取软件签名,获取Android应用签名

本章讲解下Android如何获取应用签名。

在某些场景下, 我们需要某应用的签名信息,签名信息存放在包里,所以我们需要获取包信息。

(1)获取已安装应用的所有包名

/**

* 获取所有已安装应用的包名

* @param paramContext

*/

private List getInstalledPackageName(Context paramContext){

PackageManager localPackageManager = paramContext.getPackageManager();

List localPackageInfos = localPackageManager.getInstalledPackages(0);

List list = new ArrayList<>();

for(PackageInfo packageInfo : localPackageInfos){

list.add(packageInfo.packageName);

}

return list;

}

(2)获取指定应用的签名

private Signature[] getRawSignature(Context paramContext, String paramString) {

if ((paramString == null) || (paramString.length() == 0)) {

errout("获取签名失败,包名为 null");

return null;

}

PackageManager localPackageManager = paramContext.getPackageManager();

PackageInfo localPackageInfo;

try {

localPackageInfo = localPackageManager.getPackageInfo(paramString, PackageManager.GET_SIGNATURES);

if (localPackageInfo == null) {

errout("信息为 null, 包名 = " + paramString);

return null;

}

} catch (PackageManager.NameNotFoundException localNameNotFoundException) {

errout("包名没有找到...");

return null;

}

return localPackageInfo.signatures;

}

(3)复制到粘贴板

String result = result_text.getText().toString().trim();

ClipboardManager cm = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);

// 将文本内容放到系统剪贴板里。

cm.setText(result);

展示效果如下

33c909940f74

图片.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值