Android getContentLength siempre devuelve -1 al descargar el archivo apk

Estoy usando el siguiente código para descargar el archivo en mi proyecto de Android:

URL url = new URL(fileUrl);
URLConnection conection= url.openConnection();
conection.setDoOutput(true);
conection.connect();
int lenghtOfFile = conection.getContentLength();

SifileUrl es apk,LONGITUD DE ARCHIVO siempre devuelve -1.
Pero si es imagen, tipo de video, ... el retorno de la longitud del archivo es exactamente.

Por qué ?

Estoy usando eclipse, Android SDK revisión 23.

Respuestas a la pregunta(1)

Su respuesta a la pregunta