android蓝牙打印机连接?

时间:2011-04-25 07:29:18

标签: android bluetooth

我有J2ME应用程序将数据字节打印到打印机。 但现在,我必须将该代码转换为Android代码。

我的问题是: 我无法通过蓝牙从我的设备Galaxy Tab Froyo向移动打印机发送数据byte []?

这里是我的简单代码:

UUID MY_UUID = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");
BluetoothSocket btSocket btSocket = device.createRfcommSocketToServiceRecord(MY_UUID);
btSocket.connect();
OutputStream outStream = btSocket.getOutputStream();
String message = "this is message";
byte[] msgBuffer = message.getBytes();
outStream.write(msgBuffer.length);
outStream.write(msgBuffer);

当我看到LogCat时,它显示我通过所有过程而没有错误。

任何人都可以帮助我吗?

提前感谢,

AQL

2 个答案:

答案 0 :(得分:1)

我想到的第一件事是outStream.close(),你忘了写。虽然我很可能是错的

答案 1 :(得分:0)

您需要告诉打印机您要打印的内容(文本,图像,条形码)。所有蓝牙打印机都使用sam ehexadecimal代码来处理。尝试:

        byte[] arrayOfByte1 = { 27, 33, 0 }; //This defines the FontType we use 2 in the next line for 0 thats the default Font.
        byte[] printformat = { 0x1B, 0x21,(byte)(0x8|arrayOfByte1[2]) }; 

        btoutputstream = btsocket.getOutputStream();

        btoutputstream.write(printformat);
        btoutputstream.write(printAlign);
        btoutputstream.write(message.getBytes());