qt - 蓝牙:如何从MAP读取 “Message Notification Service”(MNS)中的消息? QT

标签 qt sockets bluetooth notifications

我正在笔记本电脑(Debian 8)上编写QT 5应用程序,如果手机(OnePlus One,Android 5.1)上有新的SMS可用,我想在此通知我。

我设法注册了MAP服务并手动阅读了SMS。为此,我创建了一个套接字。当有新数据可用时,应调用readyRead()信号。对于手动获取SMS来说,它工作正常。在同一套接字上,我注册了消息通知服务。

我的问题是,当收到新消息时,永远不会发出readyRead()信号。为了监视数据流,我使用wireshark。 Wireshark展示了该事件。因此,智能手机会将事件发送到便携式计算机,而不发送到启动连接请求的套接字吗?

我从(MAP)规范中获得的注册信息:https://www.bluetooth.org/docman/handlers/DownloadDoc.ashx?doc_id=409110

我的想法是,智能手机和笔记本电脑会创建一个新的 socket ,但不确定。即使是在什么时候,我也不知道如何使用QT访问此套接字。

有人可以帮忙吗?谢谢你。

最佳答案

Over the same socket i register the Message Notification Service.



MAS和MNS应该是两个RFCOMM链接,即您可能有两个套接字,一个用于MAS客户端,另一个用于MNS服务器。
您可以引用MAP规范1.1第6.4.2节中的图6.3。

关于qt - 蓝牙:如何从MAP读取 “Message Notification Service”(MNS)中的消息? QT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38375525/

相关文章:

node.js - 我正在使用 flutter 和 node js 开发一个测验应用程序,需要向所有参与者广播一个随机问题

ios - 即使应用程序被杀死,是否可以与 ios 设备交互?

Qt, qt core inclusion 有必要吗?

qt - 在 QtCreator 中使用 .pro 和 .pri 正确(树)显示 Qt 项目

c# - 带有 Silverlight 应用程序的套接字?

iphone - GKPeerPickerController 已在 iOS 7 中弃用

android - 获取android中所有可用蓝牙设备的地址和名称

qt - QPushButton 或 QToolButton 的颜色

c++ - Excel COM 对象 - 处理工作簿关闭事件

c - 无法识别存储在 sockaddr_in 结构中的类型