Android蓝牙使用打印机和条形码阅读器

时间:2011-04-08 12:11:14

标签: android bluetooth

我想知道是否有人可以帮我解决我遇到的问题。我正在重写一个我在J2ME使用android开发的应用程序。我唯一遇到的问题是蓝牙。该应用程序从蓝牙条形码阅读器读取信息,并将数据发送到蓝牙打印机。

在读取或写入任何数据之前,我会扫描所有蓝牙设备,允许用户选择设备并存储设备MAC地址。

让我们从条形码阅读器开始。设备发现找不到它。为什么?甚至诺基亚设备也能找到我正在使用的阅读器。

Discovery找到了打印机,但是当我尝试向其打印数据时,我收到IOException,无法启动发现服务。

使用J2ME我使用以下方法连接到两个设备:

bconn = (StreamConnection) Connector.open("btspp://" + addr + ":1;authenticate=false;encrypt=false;master=false"); 

使用android我使用以下内容:

String addr;

BluetoothAdapter bconn=null;

BluetoothDevice btd;

BluetoothSocket btSocket;

private UUID[] uuidSet;

.
.
.

uuidSet=new UUID[1];

uuidSet[0]=UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");

try{
    bconn=BluetoothAdapter.getDefaultAdapter();

    btd=bconn.getRemoteDevice(addr);
    btSocket=btd.createRfcommSocketToServiceRecord(uuidSet[0]);
    btSocket.connect();
}

catch(Exception se){

System.out.println("open read Error: " + se);

Log.d("0", "Read Error " + se);

}

错误发生在btSocket.connect行

经过几个小时的战斗后,我决定将我的打印机和扫描仪安装到带有蓝色usb蓝牙设备的PC上。

当我尝试使用应用程序(使用超级终端)时,一切正常。

有人有任何建议吗。

此致 史蒂夫

0 个答案:

没有答案