gpt4 book ai didi

android - OBEX OPP 特定转移

转载 作者:搜寻专家 更新时间:2023-11-01 09:13:50 25 4
gpt4 key购买 nike

我正在用 android 开发一个 OBEX OPP 客户端应用程序电话。通过客户端应用程序我将向非 Android 设备发送一个对象(它将充当OPP 服务器)。我已经使用 API 创建了 RFCOMM 套接字连接

createRfcommSocketToServiceRecord(OPP_UUID);我使用的UUIDOBEX 推送即

私有(private)静态最终 UUID OPP_UUID = UUID .fromString("00001105-0000-1000-8000-00805F9B34FB");

我观察到通过这个套接字连接是成功的我得到了套接字的输入和输出流来发送和接收数据。但是当我发送数据时,数据收到了另一个设备格式不正确。我的意思是在接收设备接收到数据时出现错误。 BT空气嗅探器表示 retrieved_opcode 中的数据不存在。OBEX响应代码是错误的请求。

任何人都可以指导我这有什么问题吗?或制作步骤与未配对设备的 OBEX OPP 连接。

您的宝贵意见将帮助我克服这个问题。

谢谢,谢卡尔

最佳答案

您应该可以配对设备,您也可以通过设备上的蓝牙设置进行配对,但您不能像 SPP 通信那样直接连接并发送数据。

OBEX是一个协议(protocol),有自己的header、packets等。

Android 中没有可以通过编程方式使用的通过 OBEX 进行通信的 API。 (您可以连接到设备,但之后您只能读取/写入字节)。

您可以通过几种方式通过 obex 将文件发送到配对设备:

对于 ACTION_SEND Intent ,将弹出一个菜单,其中包含可以处理您要发送的文件类型的应用程序,用户需要从中选择蓝牙,然后选择设备。

Intent share = new Intent(Intent.ACTION_SEND);
share.setType("image/jpeg");
share.putExtra(Intent.EXTRA_STREAM, Uri.parse(SDCardPath + "file.jpg"));
startActivity(Intent.createChooser(share, "Share Image"));

或者如果您不想在您的应用程序中使用任何对话框,您可以使用另一种方法,请检查以下问题,它有一个包含有效解决方案的更新:

Sending a File using Bluetooth OBEX Object Push Profile (OPP)

关于android - OBEX OPP 特定转移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6186191/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com