Проблема в том, что вы используете класс Java Inflater, который использует алгоритм сжатия Zlib. Однако в безопасном QR-коде UIDAI используется алгоритм сжатия GZip. Таким образом, логика декомпрессии должна быть изменена следующим образом:
ByteArrayOutputStream os = new ByteArrayOutputStream();
try {
ByteArrayInputStream in = new Byte
введите код здесь ArrayInputStream(data);
GZIPInputStream gis = new GZIPInputStream(in);
byte[] buffer = new byte[1024];
int len;
while((len = gis.read(buffer)) != -1){ os.write(buffer, 0, len);
}
os.close();
gis.close();
}
catch (IOException e) {
e.printStackTrace();
return null;
}
byte[] output = os.toByteArray(); ;