Problema no envio de inteiros via bluetooth

Eu tenho uma aplicação Android que precisa enviar valores inteiros por bluetooth. Eu configuro o fluxo de dados como DataOutputStream para enviar inteiros. Eu já consegui enviar caracteres e string pelo DataOutputStream mas quando eu envio um valor inteiro o outro dispositivo não recebe nada. Eu gostaria de saber como eu faço para enviar valores do tipo inteiro via bluetooth no Android e se existe alguma restrição no envio de dados inteiros.

Ja tive esse problema, resolvi transformando int para byte

public static byte[] intToByteArray(int a) { byte[] bt = new byte[4]; bt[3] = (byte) (a & 0xFF); bt[2] = (byte) ((a >> 8) & 0xFF); bt[1] = (byte) ((a >> 16) & 0xFF); bt[0] = (byte) ((a >> 24) & 0xFF); return bt; }

public static int byteArrayToInt(byte[] b) { return (b[3] & 0xFF) + ((b[2] & 0xFF) << 8) + ((b[1] & 0xFF) << 16) + ((b[0] & 0xFF) << 24); }