首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >uBudu Mesh网络接收消息

uBudu Mesh网络接收消息
EN

Stack Overflow用户
提问于 2015-07-20 11:50:09
回答 2查看 170关注 0票数 0

有人知道如何通过uBudu Mesh网络接收消息吗?

我正在开发一个使用uBudu信标的应用程序,其总体思路是允许用户通过这些信标相互发送消息。我已经成功地连接了iOS SDK,如下所述:https://github.com/Ubudu/IOS-Mesh-SDK

有一个例子说明如何将mesh消息发送到另一个信标,它工作得非常完美,但是对于从信标到用户应用程序检索这些消息,我完全不知道。

MeshBeacon类中有一些方法:

代码语言:javascript
复制
- (void)abortMeshMessage;
- (void)clearMeshMessageQueue;

- (void)setMeshNotification:(BOOL)enable withCompletionBlock:(UMeshBeaconSuccessBlock)completionBlock;

但是没有任何关于检索信息的内容。

任何建议都是非常感谢的!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-21 11:13:30

我找到了可能是野蛮人但解决这个问题的办法。

首先,我们需要将自己设置为BeaconManager的代表

代码语言:javascript
复制
UBUMeshBeaconManager.sharedInstance().delegate = self

在实现委托方法时,连接到最近的信标,并将其外围委托重置为self。

代码语言:javascript
复制
func meshManager(meshManager: UBUMeshBeaconManager!, didUpdateVisibleAndConnectableNodes meshNodes: [AnyObject]!) {
    UBUMeshBeaconManager.sharedInstance().connectToClosestBeacon({ (meshManager, meshBeacon, userInfo) -> Void in
            meshBeacon.peripheral.delegate = self
        }, progressBlock: { (meshManager, userInfo) -> Void in

        }, failedBlock: { (meshManager, meshBeacon, userInfo, error) -> Void in

        })
}

并在外围代理方法中等待特征更新。所有服务和特征都将由UbuduSDK设置在场景后面。

代码语言:javascript
复制
func peripheral(peripheral: CBPeripheral!,
                didUpdateValueForCharacteristic characteristic: CBCharacteristic!,
                error: NSError!) {
    var string = NSString(data: characteristic.value, encoding: NSASCIIStringEncoding)
    println(string)
}
票数 0
EN

Stack Overflow用户

发布于 2015-07-21 06:49:52

正如您正确地指出的,SDK还没有接收消息的方法,但是有一个库的更新,支持这个特性。

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

https://stackoverflow.com/questions/31515768

复制
相关文章

相似问题

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