Tag: obex

使用蓝牙发送文件OBEX对象推送configuration文件(OPP)

有什么办法使用OBEX发送一个文件使用android蓝牙API? 我需要将文件发送到仅支持OBEX OPP的打印机。 我可以使用Android意图ACTION_SEND发送文件到打印机没有问题,但我需要以编程方式发送它。 我可以用方法createRfcommSocketToServiceRecord()使用OBEX OPP UUID(1105)连接到蓝牙打印机,但是我应该按照obex规范使用OBEX发送一个文件..这并不像将字节写入输出套接字那么简单。 。 但如果意图ACTION_SEND可以处理这个,为什么开发人员没有任何api发送文件? 我也检查了像BlueCove一些第三方库,但我仍然没有得到它的工作..(Nexus One&Galaxy Tab抛出一个exception,说本地库bluecove_armv71不可用..和LG Optimus One说bluecove_armv61 isn没有可用..) 我卡住了,有什么想法? 工作解决scheme 对于任何试图将文件发送到蓝牙设备而没有运气的人,我提供了一个使用内容提供商的工作解决scheme(感谢KPBird): 从这里抓取java类的BluetoothShare 以下代码将SD卡上的文件发送到蓝牙设备: BluetoothDevice device; String filePath = Environment.getExternalStorageDirectory().toString() + "/file.jpg"; ContentValues values = new ContentValues(); values.put(BluetoothShare.URI, Uri.fromFile(new File(filePath)).toString()); values.put(BluetoothShare.DESTINATION, device.getAddress()); values.put(BluetoothShare.DIRECTION, BluetoothShare.DIRECTION_OUTBOUND); Long ts = System.currentTimeMillis(); values.put(BluetoothShare.TIMESTAMP, ts); Uri contentUri = getContentResolver().insert(BluetoothShare.CONTENT_URI, values); UPDATE 有些人遇到上述解决scheme的问题,已经在以下设备上进行了testing: 适用于: LG […]