问题标签 [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.

0 投票
0 回答
480 浏览

ios - 使用单例在视图控制器之间保存 MCSession?

我已经开始使用多点连接框架,并成功地在 iPad Air 和 iPad Mini Retina 之间建立了连接。这很棒,但是对我来说下一步是使用单例来有效地保存两个设备之间的连接,以便实现每次视图控制器更改时的持续重新连接。问题是,当我保存 MCSession 和 Peer ID 时,它会在我有机会发送任何内容之前自行决定随机断开连接。我听说这个框架在断开连接方面存在一些问题,但是我只是想知道是否有人成功地使用这个框架和单例实现了?

亲切的问候,瑞恩金

0 投票
1 回答
1050 浏览

ios - 用于从 iphone 麦克风流式传输音频的多点连接

我一直在尝试一段时间,以找到一种使用多对等连接在 2 部 iphone 之间传输来自 iphone 麦克风的声音的方法。有一个非常好的流式传输 mp3 音乐教程(这里)和另一个实时处理来自麦克风的音频的教程(这里)。我尝试将两者结合起来,以便代替 mp3 音乐来传输麦克风馈送,但没有成功。您对此有更好的解决方案吗?还有其他想法吗?提前致谢

0 投票
2 回答
2575 浏览

objective-c - 类型检查:如何检查 NSData 是否为 NSArray?

我目前正在为 iPad 应用程序使用 XCode 中的 Multipeer Connectivity Framework。

我想使用框架(NSStrings、Booleans 和 NSArrays)发送消息,并且字符串工作正常,但我需要某种类型检查来将 NSData 对象转换为字符串、数组等。

这就是我的 didReceiveData 方法的样子:

我需要一些 if case,以便我可以将 NSData 对象转换为 NSString OR NSArray OR 等。

我怎么解决这个问题?

提前致谢!

编辑:这是发送数组的方式:

0 投票
1 回答
1241 浏览

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)

0 投票
2 回答
912 浏览

multipeer-connectivity - MCNearbyServiceAdvertiser 多对象发现信息

我不明白这有什么意义。我将两个对象放在我创建的 MCNearbyServiceAdvertiser 对象内的 discoveryinfo 字典中,并且浏览器看不到广告商,但是当我将第二个对象移出字典并在行尾将其注释掉时,浏览器会看到广告商。discoveryinfo 字典是否只接受一个对象才能工作?我有一个字符串作为第一个对象,一个数组作为第二个对象。这是它的样子:

在该行之前,我尝试了这种更简单的格式(但为了以防语法出现问题,请转到上面):

我想我可以在 discoveryinfo 字典中放置一个字典或数组,但我觉得这是一种非常愚蠢的做事方式,因为在任何情况下字典都不应该仅限于一个对象。

我将继续将我的对象放在另一个层中,以在 discoveryinfo 字典中“节省空间”,但如果你们中的任何人找到更好的做事方式或遇到同样的问题,请告诉我。

0 投票
1 回答
217 浏览

ios - 通过 Multipeer Connectivity 发送 MPMediaItem

是否可以使用多对等连接将 MPMediaItem 发送到另一台设备?我尝试将其存档然后将其作为数据发送,但在另一台设备上取消存档后它不是有效的 MPMediaItem。歌曲是否锁定在拥有它们的设备上?我不想流式传输歌曲,我想发送它们。

另外,播放这首歌然后删除它是否符合苹果的指导方针?

0 投票
1 回答
1006 浏览

ios - 关闭 MCBrowserViewController 会断开 MCSession

我已经进行了超过三天的研究来解决我的问题,但我还没有看到任何人能够解决我的问题。Browser 邀请 Advertiser,Advertiser 接受,MCSession 变为连接状态。但是,一旦 MCBrowserViewController 关闭(通过取消或完成按钮),MCSession 就会断开连接。只要我不关闭 MCBrowserViewController,MCSession 就会保持连接。我不明白它为什么或如何工作,我什至尝试过调试这个过程,但它太深入线程了,我无法理解。

请告诉我这只是我的代码有问题。

我还尝试为每个浏览器和广告商使用唯一的 MCSession,但没有成功。

0 投票
4 回答
3278 浏览

ios - iOS Multipeer 连接框架invitationHandler 似乎不接受?

我是第一次使用 mulipeer 连接框架,我想要编程(而不是助手类)控制。

当我在两个单独的设备上运行我的代码直到“广告商”收到委托回调时,一切都按照描述的方式工作:

浏览客户端的委托回调在它发现广告商时被调用:

}

然后广告客户端的委托回调在收到邀请时被调用:

在调用 'invitationHandler(YES, _session)' 后,似乎从未在“浏览”客户端和“广告”客户端之间建立连接。

我从未在任一客户端设备上的 MCSession 对象上收到任何委托回调(我收到过一次或两次 MCSessionStateNotConnected )。我原以为我会收到 MCSession 委托回调:

我错过了什么吗?有没有其他人遇到过这个问题?

0 投票
1 回答
2454 浏览

ios7 - 以前使用 MCNearbyServiceBrowser 连接的蓝牙设备的历史记录

MCNearbyServiceBrowser用来发现附近的蓝牙设备并使用invitePeer: toSession: withContext: timeout:.

UITableview现在的问题是,如果它们再次在附近,我想保留所有连接设备的历史记录并在将来重新连接它们(手动单击它们)。这可能吗?它是否符合 Apple 的政策?谢谢。

更新:

我已经实现了“jamdaddy25”回答的目标(在他回答之前:P)并且它也工作正常。但是如果两个设备具有相同的名称怎么办?在这种情况下,不显示列表中的两个或多个设备之一将是一个问题。我不希望那样。顺便说一句,感谢您的回复。

0 投票
1 回答
2912 浏览

ios - 连接浏览器和广告商而不在 Multipeer 连接中显示警报消息

目前我正在探索多点连接框架。我的应用程序广告商和浏览器中有 2 个选项。

因此,当用户在一台设备上启动浏览器,而广告商在另一台设备上启动浏览器时,他们应该能够找到彼此。当设备出现在浏览器中并且用户点击它时,使用广告设备的用户将看到一个警报,允许他们选择是否进行连接。

但我希望当浏览器点击任何特定的广告商时,它会自动建立连接而不会发出警告消息。

注意:-目前我正在使用MCBrowserViewControllerMCAdvertiserAssistant

那么有可能吗?有人能做到吗?