问题标签 [multipeer-connectivity]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 使用单例在视图控制器之间保存 MCSession?
我已经开始使用多点连接框架,并成功地在 iPad Air 和 iPad Mini Retina 之间建立了连接。这很棒,但是对我来说下一步是使用单例来有效地保存两个设备之间的连接,以便实现每次视图控制器更改时的持续重新连接。问题是,当我保存 MCSession 和 Peer ID 时,它会在我有机会发送任何内容之前自行决定随机断开连接。我听说这个框架在断开连接方面存在一些问题,但是我只是想知道是否有人成功地使用这个框架和单例实现了?
亲切的问候,瑞恩金
objective-c - 类型检查:如何检查 NSData 是否为 NSArray?
我目前正在为 iPad 应用程序使用 XCode 中的 Multipeer Connectivity Framework。
我想使用框架(NSStrings、Booleans 和 NSArrays)发送消息,并且字符串工作正常,但我需要某种类型检查来将 NSData 对象转换为字符串、数组等。
这就是我的 didReceiveData 方法的样子:
我需要一些 if case,以便我可以将 NSData 对象转换为 NSString OR NSArray OR 等。
我怎么解决这个问题?
提前致谢!
编辑:这是发送数组的方式:
multipeer-connectivity - iOS 7: Multipeer Connectivity Framework
Has anybody an idea whether the MCF framework, without using the MCBrowserViewController (will be handled via MCNearbyServiceAdvertiserDelegate and MCNearbyServiceBrowserDelegate methods), will have a maximum number of peers allowed or not? (at least there is no public property to set it)
(for the MCBrowserViewController the default / maximum value is 8, details can be found here: https://developer.apple.com/library/ios/DOCUMENTATION/MultipeerConnectivity/Reference/MCBrowserViewController_class/MCBrowserViewController_class.pdf)
multipeer-connectivity - MCNearbyServiceAdvertiser 多对象发现信息
我不明白这有什么意义。我将两个对象放在我创建的 MCNearbyServiceAdvertiser 对象内的 discoveryinfo 字典中,并且浏览器看不到广告商,但是当我将第二个对象移出字典并在行尾将其注释掉时,浏览器会看到广告商。discoveryinfo 字典是否只接受一个对象才能工作?我有一个字符串作为第一个对象,一个数组作为第二个对象。这是它的样子:
在该行之前,我尝试了这种更简单的格式(但为了以防语法出现问题,请转到上面):
我想我可以在 discoveryinfo 字典中放置一个字典或数组,但我觉得这是一种非常愚蠢的做事方式,因为在任何情况下字典都不应该仅限于一个对象。
我将继续将我的对象放在另一个层中,以在 discoveryinfo 字典中“节省空间”,但如果你们中的任何人找到更好的做事方式或遇到同样的问题,请告诉我。
ios - 通过 Multipeer Connectivity 发送 MPMediaItem
是否可以使用多对等连接将 MPMediaItem 发送到另一台设备?我尝试将其存档然后将其作为数据发送,但在另一台设备上取消存档后它不是有效的 MPMediaItem。歌曲是否锁定在拥有它们的设备上?我不想流式传输歌曲,我想发送它们。
另外,播放这首歌然后删除它是否符合苹果的指导方针?
ios - 关闭 MCBrowserViewController 会断开 MCSession
我已经进行了超过三天的研究来解决我的问题,但我还没有看到任何人能够解决我的问题。Browser 邀请 Advertiser,Advertiser 接受,MCSession 变为连接状态。但是,一旦 MCBrowserViewController 关闭(通过取消或完成按钮),MCSession 就会断开连接。只要我不关闭 MCBrowserViewController,MCSession 就会保持连接。我不明白它为什么或如何工作,我什至尝试过调试这个过程,但它太深入线程了,我无法理解。
请告诉我这只是我的代码有问题。
我还尝试为每个浏览器和广告商使用唯一的 MCSession,但没有成功。
ios - iOS Multipeer 连接框架invitationHandler 似乎不接受?
我是第一次使用 mulipeer 连接框架,我想要编程(而不是助手类)控制。
当我在两个单独的设备上运行我的代码直到“广告商”收到委托回调时,一切都按照描述的方式工作:
浏览客户端的委托回调在它发现广告商时被调用:
}
然后广告客户端的委托回调在收到邀请时被调用:
在调用 'invitationHandler(YES, _session)' 后,似乎从未在“浏览”客户端和“广告”客户端之间建立连接。
我从未在任一客户端设备上的 MCSession 对象上收到任何委托回调(我收到过一次或两次 MCSessionStateNotConnected )。我原以为我会收到 MCSession 委托回调:
我错过了什么吗?有没有其他人遇到过这个问题?
ios7 - 以前使用 MCNearbyServiceBrowser 连接的蓝牙设备的历史记录
我MCNearbyServiceBrowser
用来发现附近的蓝牙设备并使用invitePeer: toSession: withContext: timeout:
.
UITableview
现在的问题是,如果它们再次在附近,我想保留所有连接设备的历史记录并在将来重新连接它们(手动单击它们)。这可能吗?它是否符合 Apple 的政策?谢谢。
更新:
我已经实现了“jamdaddy25”回答的目标(在他回答之前:P)并且它也工作正常。但是如果两个设备具有相同的名称怎么办?在这种情况下,不显示列表中的两个或多个设备之一将是一个问题。我不希望那样。顺便说一句,感谢您的回复。
ios - 连接浏览器和广告商而不在 Multipeer 连接中显示警报消息
目前我正在探索多点连接框架。我的应用程序广告商和浏览器中有 2 个选项。
因此,当用户在一台设备上启动浏览器,而广告商在另一台设备上启动浏览器时,他们应该能够找到彼此。当设备出现在浏览器中并且用户点击它时,使用广告设备的用户将看到一个警报,允许他们选择是否进行连接。
但我希望当浏览器点击任何特定的广告商时,它会自动建立连接而不会发出警告消息。
注意:-目前我正在使用MCBrowserViewController
和MCAdvertiserAssistant
那么有可能吗?有人能做到吗?