问题标签 [gksession]

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 投票
1 回答
195 浏览

ios - GKSession 将获取后台其他设备的 peer id

GKPeerPickerController 是否会显示蓝牙设备的对等 ID,该设备是处于挂起模式的特定应用程序的一部分

设想

我有一个具有特定会话 id 的 iOS 蓝牙应用程序 XYZ。相同的应用程序在具有相同会话 id 的多个设备中运行。每个设备都应在 XYZ 应用程序中显示附近设备的列表。假设应用程序已在其中一台设备中进入挂起模式。我的问题仍然是其他对等方将从处于暂停模式的 XYZ 应用程序中获取蓝牙设备的对等 ID。

提前致谢

0 投票
1 回答
274 浏览

ios - 如何通过 GKSession 蓝牙发送整数数组

我在通过 GKSession 发送整数数组时遇到问题。

我是这样做的:

发送它。

从调度程序调用 sendData 函数。

去接收它。

这不起作用,游戏崩溃。

那么我在这里做错了什么?

0 投票
0 回答
102 浏览

ios - iOS 同步笔记分享

我正在使用GKSession. 假设 2 个用户 - A 和 B 使用GKSession.

用户 A 类型的任何内容都会发送给用户 B(每个字符),反之亦然。

我正在使用shouldChangeTextInRangefromUITextViewDelegate并传递插入符号位置,以及键入的字符以及其他数据包数据。该字符出现在接收者的文本视图中的相同位置(在数据包中发送的插入符号位置)。一切正常,除非两个用户同时在同一个插入符号位置发送一些字符。如何确保两个用户的文本视图彼此同步?

例如:

如果用户 A 在插入符号位置 2 发送字符 'a' 并且在同一用户 B 在插入符号位置 2 发送字符 'b' 。顺序应该是什么 - 'ab' 或 'ba' ?

我正在使用GKSendDataReliable并希望避免每次都发送收到的数据包确认,因为其他用户将不得不等待发送下一个字符,这会扼杀所有的乐趣。

堆栈溢出的新功能。非常感谢有关处理数据包传递和同步数据的任何建议。非常感谢你们的帮助!

0 投票
0 回答
240 浏览

ios - 应用程序在模拟器上挂起但不在实际设备上后 GKSession 重新连接

我有一个使用在 GKSessionModeServer 模式下运行的 GKSession 进行本地网络的应用程序。这是有限的,因此在使用此应用程序时只有两个设备会连接。

只要设备之间没有断开连接,所有的连接和通信代码都会完全按照预期工作。如果出现中断,我希望设备自动重新连接。我一直在研究代码,以便设备在发生断开连接事件后自动重新连接。

我可以在模拟器和设备上同时运行应用程序,如果我在模拟器上挂起应用程序,它会完全按照我的预期重新连接(无论是作为服务器还是客户端运行),但是如果我挂起,两个代码都不能在设备上运行真实设备上的应用程序。

正如你所看到的,我已经被带有 NSLog 语句的代码乱扔了,当我挂起主机在模拟器上时的输出是:

模拟器:

设备:

我找不到任何关于错误 65540 的提及。我们将不胜感激地收到任何帮助。

0 投票
0 回答
252 浏览

ios - GKSession蓝牙连接问题

我的目标是创建一个具有 1 个主控和 1..6 个客户端的客户端/服务器蓝牙游戏。设备是装有 iOS 6+ 的 iPad v.2-4。

这个任务的第一个实现是使用带有客户端/服务器模型的 GKSession 类。GSSession implementation shawn 认为这个类包含很多客户端检测服务器的问题,当连接 4 个以上的设备时不稳定等等。

好的,我拒绝使用 GKSession 并重新设计了网络类来处理通过蓝牙和 CFSockets 发布的 DNSSD-api 服务器。这种实现还向客户端显示服务器发现和连接问题的错误。

我现在有一个想法,即为每个客户端 iPad 创建一个具有唯一 SessionID 的 GKSession 对象,并在服务器 iPad 上实现一组 GKSession——因此每个客户端都将使用它自己的 GKSession 进行操作。

有人可以给我一个建议,我应该如何通过蓝牙与 7 个 iPad 建立稳定的连接,你认为我做错了什么?

0 投票
1 回答
291 浏览

iphone - 使用 GKSession 通过不同的 WiFi 网络连接 2 台设备

我正在尝试使用 GKSession 连接 2 台设备。当设备在同一个 WiFi 网络上时,它正在工作,但是当我尝试在不同的 WiFi 网络上连接设备时,它不工作。这是我的 GKSession 代码

}

我不确定是否可以使用 GKSession。

根据苹果

GKSession 对象提供了使用蓝牙或 Wi-fi 发现并连接到附近的 iOS 设备的能力。

请帮助我尝试使用 GKSession 创建聊天应用程序。

0 投票
1 回答
677 浏览

ios - 如何在 iOS 6.1 上正确设置 GKSession(蓝牙)

我在让 GKSession 工作时遇到问题。下面是我按下特定按钮时执行的代码。

第一次按下按钮后,一切似乎都正常。之后每次我按下按钮时,它都会打印“当前可用的对等点:0”。如果我没有两个设备并排放置,这将是预期的输出,同时按下按钮运行程序。我还在这个类中实现了所有 GKSessionDelegate 方法,它们都将消息记录到控制台。这些方法都没有运行过。所有这些都向我表明这些设备找不到彼此。

但是,我已经运行了示例程序 GKRocket,它使用 GKSession 连接两个设备,并且在这两个相同的设备之间运行良好。我已经将 GKRocket 的代码与我的程序代码进行了比较,我没有发现任何我认为会影响 GKSession 的差异。

有什么建议么?

0 投票
2 回答
1015 浏览

ios - Game Center GKMatch GKSendDataReliable 数据包丢失

我在应用程序中成功使用 GKMatch 已经有一段时间了。我一直在追查游戏偶尔停止的问题,并将其追踪到正在发送但未收到的数据包。这只是偶尔发生,但我似乎无法找出它发生的原因。

所有消息都使用 GKSendDataReliable 发送。

日志记录显示数据包从一台设备成功发送,但目标设备从未收到。

...

我看到的情况是定期(可能 100 条消息中的 1 条)从“sendDataToAllPlayers”方法发送而没有错误,但接收设备从未点击“didReceiveData”方法。我的理解是,使用 GKSendDataReliable 应该发送消息,然后在收到确认之前不会发送另一个消息。未收到消息,但从同一设备发送新消息。

发送方法返回 'YES' 并且错误为 nil,但 didReceiveData 从未命中...!

有没有人见过这个?有谁知道这可能是什么?我不知道我还能做些什么来调试它。

0 投票
1 回答
345 浏览

ios - 不使用 GKPickercontroller 无法连接两个设备

我正在尝试使用 Gamekit 连接两个设备并传输少量数据。我可以使用 GKPickerController 做到这一点,但现在为了让用户体验更好一点,我正在尝试自动实现这一点。问题是delgate方法

没有被调用。

这也是两个不同的应用程序。

请在下面找到代码:

0 投票
2 回答
546 浏览

iphone - 使用蓝牙在另一台设备上播放歌曲

我的应用程序中有歌曲的播放列表。我想使用蓝牙在另一个设备(iphone)上播放此播放列表中的歌曲。

这就是我这样做的目的

请看屏幕截图

现在我不知道如何继续。有人可以帮我吗??通过选择一首歌曲可以在另一台设备上播放吗?