微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

OBEX OPP特定转账

如何解决OBEX OPP特定转账

| 我正在用android开发OBEX OPP客户端应用程序 电话。通过客户端应用程序 我会将对象发送到非Android设备(用作 OPP服务器)。我已经使用API​​创建了RFCOMM套接字连接 createRfcommSocketToServiceRecord(OPP_UUID);我使用了UUID OBEX推送即 私有静态最终UUID OPP_UUID = UUID                        .fromString(\“ 00001105-0000-1000-8000-00805F9B34FB \”); 我观察到通过此套接字连接成功 然后我得到了套接字的输入和输出流来发送和 接收数据。但是当我发送数据时,数据接收到另一个 设备的格式不正确。我的意思是在 接收器设备收到错误数据。 BT空气嗅探器 指示不存在retriked_opcode中的数据。 响应代码错误的请求。 谁能指导我这是什么问题?或制作一个 OBEX与未配对设备的OPP连接。 您的宝贵意见将帮助我克服这一问题。 谢谢, 舍哈尔     

解决方法

        您应该能够配对设备,也可以通过设备上的蓝牙设置进行配对,但是您无法与之连接并像SPP通信一样直接发送数据。 OBEX是一种协议,带有自己的标头,数据包等。 没有可以通过编程方式使用的Android中通过OBEX进行通信的API。 (您可以连接到设备,但随后只能读取/写入字节)。 您可以通过两种方式通过obex将文件发送到配对的设备: 有了ACTION_SEND意图,将弹出一个菜单,其中包含可以处理您要发送的文件类型的应用程序,用户需要从中选择蓝牙,然后选择设备。
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\"));
或者,如果您不希望在应用程序中出现任何对话框,则可以使用另一种方法,请检查以下问题,它具有使用有效解决方案的更新: 使用蓝牙OBEX对象推送配置文件(OPP)发送文件     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。