code: public static boolean doCheck(String noSignStr, String sign, String publicKey) {
  
          if (sign == null || noSignStr == null || publicKey == null) {
              return false;
          }
  
          try {
              KeyFactory keyFactory = KeyFactory.getInstance("RSA");
              byte[] encodedKey = Base64.decode(publicKey, Base64.DEFAULT);
              PublicKey pubKey = keyFactory.generatePublic(new X509EncodedKeySpec(encodedKey));
  
              java.security.Signature signature = java.security.Signature.getInstance(SIGN_ALGORITHMS);
  
              signature.initVerify(pubKey);
              signature.update(noSignStr.getBytes(CHARSET));
  
              return signature.verify(Base64.decode(sign, Base64.DEFAULT));
          } catch (Exception e) {
              //  这里是安全算法，为避免出现异常时泄露加密信息，这里不打印具体日志
              HMSAgentLog.e("doCheck error");
          }
          return false;
      }
docs: 校验签名信息
  @param noSignStr 待校验未字符串
  @param sign 签名字符串
  @param publicKey 公钥
  @return 是否校验通过