Android: envío de una matriz de bytes [] a través de Http POST

Puedo hacer una POST de una cadena de parámetros. Yo uso el siguiente código:

String parameters = "firstname=john&lastname=doe";
URL url = new URL("http://www.mywebsite.com");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
connection.setRequestMethod("POST");

OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream());
out.write(parameters);
out.flush();
out.close();
connection.disconnect();

Sin embargo, necesito hacer una POST de datos binarios (que está en forma de byte []).

No estoy seguro de cómo cambiar el código anterior para implementarlo.
¿Podría alguien ayudarme con esto?