I've already seen
Is it possible to check progress of URLconnection.getInputStream()? https://stackoverflow.com/a/20120451/5437621
I'm using the following code to download a file from internet:
try {
    InputStream is = new URL(pdfUrl).openStream();
    byte[] pdfData = readBytes(is);
    return pdfData;
} catch (IOException e) {
    e.printStackTrace();
    return null;
}
public byte[] readBytes(InputStream inputStream) throws IOException {
    ByteArrayOutputStream byteBuffer = new ByteArrayOutputStream();
    int bufferSize = 1024;
    byte[] buffer = new byte[bufferSize];
    int len = 0;
    while ((len = inputStream.read(buffer)) != -1) {
        byteBuffer.write(buffer, 0, len);
    }
    return byteBuffer.toByteArray();
}
Is there any method I can get the progress of the file being downloaded ?
The answers I have seen are using a while loop but I don't understand how to use it in this case.
EDIT:
I'm using this in AsyncTask:
protected byte[] doInBackground(String... url) {
        pdfUrl = url[0];
        try {
            InputStream is = new URL(pdfUrl).openStream();
            DownloadBytes downloadData = readBytes(is);
            byte[] pdfData = downloadData.getBytes();
            progress = downloadData.getProgress();
            return pdfData;
        } catch (IOException e) {
            e.printStackTrace();
            return null;
        }
}
How can I adjust publishProgress() in this method ?
