首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过OBEX发送文件(lightblue/OBEXFTP)

通过OBEX发送文件(lightblue/OBEXFTP)
EN

Stack Overflow用户
提问于 2011-10-16 22:06:31
回答 1查看 2.3K关注 0票数 1

我正在拼命地尝试通过OBEX发送文件,使用的是python。我有两个功能代码,第一个使用lightblue,另一个使用obexftp。我们这里有两部安卓手机,第一部是三星Galaxy S,第二部是HTC desire HD (运行CyanogenMod 7.1)。我正在尝试从一台运行Ubuntu (包括natty和lucid)的电脑上向这些手机发送文件。

问题是,每个代码只用一部手机就行了。而且只是偶尔。

第一个是:

代码语言:javascript
复制
import lightblue
client=lightblue.obex.OBEXClient('MACADDR',CHANNEL)
client.connect()
client.put({'name':'file.png'},file('file.png',"rb"))
client.disconnect()

这个只适用于galaxy s。如果我尝试将文件发送到desire,我会得到:

代码语言:javascript
复制
<OBEXRespnse reason='Internal Server Error' code=0x50 (0xd0) headers={}>

第二个代码是:

代码语言:javascript
复制
import obexftp
cli=obexftp.client(obexftp.BLUETOOTH)
channel=obexftp.browsebt('MACADDR',obexftp.PUSH)
print channel #it is the correct channel, I've doubled checked
cli.connect ('MACADDR',channel)
cli.put_file("./file.png") #I also noticed you need to wait a second before this
cli.disconnect()

这个只适用于desire hd (有时)。

所有设备都是使用bluez-simple-agent脚本配对的,该脚本在Ubuntu中可用。

我试图找出是什么导致了这种不一致,但没有成功。如果有人指出我做错了什么,或者给我看一个实际有效的代码,我会很高兴的。

EN

回答 1

Stack Overflow用户

发布于 2011-11-16 18:10:23

OBEX可能是出了名的buggy,有很多耳机/免提制造商投入大量资金来测试OBEX和其他BT协议……也许这就是问题所在!你能试试更多的手机来测试一下吗?!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7784781

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档