首页 > 其他分享 >Android生成应用的MD5

Android生成应用的MD5

时间:2025-01-16 13:53:56浏览次数:1  
标签:signatures 生成 pm import Android PackageManager android MD5

我们再申请第三方平台的参数时,需要上传签名文件的MD5,下面通过java代码生成

!!!记住一定要在build.gradle配置将应用的签名文件设置成你自己的,使用debug的默认签名是不对的

import android.content.Context;
import android.content.pm.PackageManager;
import android.content.pm.Signature;
import android.util.Base64;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public String getSignatureMD5(Context context) {

    try {
        PackageManager pm = context.getPackageManager();
        Signature[] signatures = pm.getPackageInfo(context.getPackageName(),
                PackageManager.GET_SIGNATURES).signatures;
        // 只取第一个签名
        Signature signature = signatures[0];
        MessageDigest md = MessageDigest.getInstance("MD5");
        byte[] digest = md.digest(signature.toByteArray());

        // 转换为十六进制字符串
        return bytesToHex(digest);
    } catch (PackageManager.NameNotFoundException | NoSuchAlgorithmException e) {
        // 处理异常
    }
    return null;
}

private String bytesToHex(byte[] bytes) {
    StringBuilder sb = new StringBuilder();
    for (byte b : bytes) {
        sb.append(String.format("%02x", b));
    }
    return sb.toString();
}

 

标签:signatures,生成,pm,import,Android,PackageManager,android,MD5
From: https://www.cnblogs.com/maowuge/p/18674839

相关文章

  • Android 简单实现写入日志信息到日志文件功能
    android简单实现写入日志信息到日志文件功能 1)AppLogHelper.java定义publicclassAppLogHelper{privatestaticfinalStringLOG_DIR="appLog";//日志文件夹名privatestaticfinalStringLOG_NAME="log.txt";//日志文件名privatestaticSimpleD......
  • [源码免费下载]毕业设计源码信息分享下载(Android+微信小程序+管理系统)
     博主介绍:本人专注于Android/java/数据库/微信小程序技术领域的开发,以及有好几年的计算机毕业设计方面的实战开发经验和技术积累;尤其是在安卓(Android)的app的开发和微信小程序的开发,很是熟悉和了解;本人也是多年的Android开发人员;希望我发布的此篇文件可以帮助到您;......
  • Android系统定制APP开发_如何对应用进行系统签名
    前言当项目开发需要使用系统级别权限或frame层某些api时,普通应用是无法使用的,需要在AndroidManifest中配置sharedUserId:AndroidManifest.xml中的android:sharedUserId=“android.uid.system”,代表的意思是和系统相同的uid,可以拥有修改系统时间,文件操作等权限。1.制作And......
  • H3CNE-11-生成树协议STP
    STP:SpanningTreeProtocol,可以在提高可靠性的同时又能避免环路带来的各种问题。一句话总结STP的作用:防止交换机环路。为了提高网络的可靠性,交换网络中通常会使用冗余链路,然而冗余链路会给交换网络带来环路风险,并导致广播风暴以及MAC地址表不稳定的问题,进而会影响到用户的......
  • 【multisim让七段显示器连续显示奇数或偶数生成与合成脉冲】2022-6-11
    缘由multisim如何让七段显示器连续显示奇数-其他-CSDN问答 脉冲延时合成极性选择......
  • 搜索与图论(三)-最小生成树(Prim、Kruskal)和二分图(染色法、匈牙利法)
    目录一、最小生成树1.Prim算法 2.Kruskal算法二、二分图  1.判断二分图--染色体法 2.求二分图最大匹配--匈牙利算法一、最小生成树1.Prim算法         分为朴素Prim算法和堆优化Prim算法。写法和dijikstra算法类似,堆优化过程也类似,可类比学习。首......
  • Android 12.0 mtk平板camera2横屏预览旋转90度横屏保存圆形预览缩略图旋转90度功能实
    1.前言在12.0的系统rom定制化开发中,在进行一些平板等默认横屏的设备开发的过程中,需要在进入camera2的时候,默认预览图像也是需要横屏显示的,在上一篇已经实现了横屏预览功能,然后发现横屏预览后,点击录像和照片下保存的圆形预览缩略图依然是竖屏的,所以说同样需要将视频也保存为......
  • AIGC视频生成算法/模型总结
    这里,我们汇总前面完成的工作(图像生成方面的研究),总结近两年来突出的视频生成算法/模型,并展望未来的工作计划(视频生成)。文章目录前情提要——图像生成后续介绍——视频生成2023年进展2024年进展前情提要——图像生成此前,我们深入钻研图像生成领域,对一系列关键......
  • php的token管理类(AI生成)
    当然,以下是一个简单的PHP类,用于生成和管理令牌(token)。这个类可以生成一个随机的令牌、验证令牌是否有效,并允许设置一个令牌的过期时间。<?phpclassToken{private$secretKey;private$token;private$expiration;/***Tokenconstructor.......
  • Android T(13) 源码分析 — 原生层 Surface 的创建
    AndroidT(13)源码分析—原生层Surface的创建文章目录AndroidT(13)源码分析—原生层Surface的创建前言摘要一、SurfaceComposerClient的createSurfaceChecked分析二、ISurfaceComposerClient的createSurface分析总结前言该系列文章基于AndroidT......