問題タブ [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 は、バックグラウンドにある他のデバイスのピア ID を取得します

GKPeerPickerController は、サスペンド モードの特定のアプリケーションの一部である Bluetooth デバイスのピア ID を表示しますか?

シナリオ

特定のセッション ID を持つ iOS Bluetooth アプリケーション XYZ があります。同じアプリケーションが、同じセッション ID を持つ複数のデバイスで実行されています。各デバイスは、XYZ アプリケーションで近くのデバイスのリストを表示する必要があります。デバイスの 1 つでアプリケーションが一時停止モードになったとします。私の質問は、他のピアが、中断モードにある XYZ アプリから Bluetooth デバイスのピア ID を取得することです。

前もって感謝します

0 投票する
1 に答える
274 参照

ios - GKSession Bluetooth 経由で整数の配列を送信するにはどうすればよいですか

GKSession 経由で整数の配列を送信する際に問題があります。

これが私がやった方法です:

送信します。

sendData 関数は、スケジューラから呼び出されます。

それを受け取るために。

これは機能せず、ゲームがクラッシュします。

それで、私はここで何が間違っていますか?

0 投票する
0 に答える
102 参照

ios - iOS 同期ノート共有

を使用してリアルタイムのメモ共有アプリを実装していGKSessionます。2 人のユーザーがいるとします。A と B は を使用して接続されてGKSessionいます。

ユーザー A が入力したものはすべて (文字ごとに) ユーザー B に送信され、その逆も同様です。

shouldChangeTextInRangefromUITextViewDelegateと pass キャレット位置、および入力された文字と他のパケット データを使用しています。文字は、受信者のテキストビューの同じ位置 (パケットで送信されたキャレット位置) に表示されます。両方のユーザーが同時に同じキャレット位置で文字を送信する場合を除いて、すべてが機能します。両方のユーザーのテキストビューが互いに同期していることを確認するにはどうすればよいですか?

例えば:

ユーザー A がキャレット位置 2 で文字 'a' を送信し、同じユーザー B がキャレット位置 2 で文字 'b' を送信した場合。'ab' と 'ba' のどちらの順序で指定する必要がありますか?

GKSendDataReliable他のユーザーが次の文字を送信するのを待たなければならないため、パケット受信確認が毎回送信されるのを避けたいと思っています。

スタック オーバーフローの新機能。パケット配信の処理とデータの同期に関する提案をいただければ幸いです。助けてくれてどうもありがとう!

0 投票する
0 に答える
240 参照

ios - GKSession がシミュレーターでアプリを一時停止した後に再接続するが、実際のデバイスでは再接続しない

GKSessionModeServer モードで実行されている GKSession を使用してローカル ネットワーキングを行うアプリがあります。これは、このアプリを使用するときに 2 つのデバイスのみが接続されるように制限されています。

デバイスが互いに切断されない限り、すべての接続および通信コードは期待どおりに機能します。中断があった場合、デバイスが自動的に再接続されるようにします。切断イベントが発生した後にデバイスが自動的に再接続されるように、コードに取り組んでいます。

シミュレーターとデバイスで同時にアプリを実行できます。シミュレーターでアプリを一時停止すると、期待どおりに再接続されます (サーバーまたはクライアントとして実行されているかどうか)。実際のデバイス上のアプリ。

ご覧のとおり、NSLog ステートメントを含むコードが散らかっています。シミュレーター上にあるホストをサスペンドしたときの出力は次のとおりです。

シミュレーター:

デバイス:

エラー 65540 に関する記述が見つかりません。

0 投票する
0 に答える
252 参照

ios - GKSession Bluetooth 接続の問題

私の目標は、1 つのマスターと 1..6 クライアントでクライアント/サーバー Bluetooth ゲームを作成することです。デバイスは、iOS 6 以降を搭載した iPad v.2-4 です。

このタスクの最初の実現は、クライアント/サーバー モデルで GKSession クラスを使用することでした。GSSession の実装は、このクラスにはクライアントによるサーバー検出に関する多くの問題が含まれていること、4 つ以上のデバイスが接続されていると不安定になることなどを示しています。

わかりました、GKSession の使用を拒否し、ネットワーク クラスを再設計して、Bluetooth および CFSockets を介して発行する DNSSD-api サーバーで動作するようにしました。この認識はまた、サーバー スポッティングおよび接続の問題のクライアント エラーを示します。

クライアント iPad ごとに一意の SessionID を持つ GKSession オブジェクトを作成し、サーバー iPad に GKSession の配列を実装するという考えが浮かびました。したがって、各クライアントは独自の GKSession で動作します。

Bluetooth経由で7台のiPadと安定した接続を確立する方法と、何が間違っていると思いますか?

0 投票する
1 に答える
677 参照

ios - iOS 6.1 で GKSession (Bluetooth) を正しくセットアップする方法

GKSession の動作に問題があります。以下は、特定のボタンが押されたときに実行される私のコードです。

最初にボタンを押した後、すべてが正常に機能しているように見えます。その後ボタンを押すたびに、「Currently Available Peers: 0」と表示されます。これは、ボタンを押した状態で両方のプログラムを実行して、2 つのデバイスを隣り合わせに配置していない場合に期待される出力です。また、すべての GKSessionDelegate メソッドがこのクラスに実装されており、これらすべてがメッセージをコンソールに記録します。これらのメソッドはいずれも実行されません。これはすべて、デバイスがお互いを見つけることができなかったことを示しています。

ただし、GKSession を使用して 2 つのデバイスを接続するサンプル プログラム GKRocket を実行したところ、同じ 2 つのデバイス間で問題なく動作しました。GKRocket のコードと私のプログラムのコードを比較しましたが、GKSession に影響を与えると思われる違いは見つかりませんでした。

助言がありますか?

0 投票する
2 に答える
1015 参照

ios - Game Center GKMatch GKSendDataReliable パケットが失われました

私はアプリで GKMatch をかなり長い間使用してきました。私は追跡しており、ゲームが時々停止するという問題を抱えており、パケットが送信されているが受信されていないことを突き止めました. これはたまにしか発生しませんが、なぜ発生するのかを追跡できないようです。

すべてのメッセージは GKSendDataReliable を使用して送信されます。

ロギングは、パケットが 1 つのデバイスから正常に送信されていることを示していますが、ターゲット デバイスでは決して受信されません。

...

私が見ているのは、「sendDataToAllPlayers」メソッドから定期的に (おそらく 100 件のメッセージに 1 件) 送信されますが、受信デバイスが「didReceiveData」メソッドにヒットすることはありません。私の理解では、GKSendDataReliable を使用するとメッセージが送信され、確認を受信するまで別のメッセージは送信されません。メッセージは受信されませんが、同じデバイスから新しいメッセージが送信されます。

送信メソッドは「YES」を返し、エラーはゼロですが、didReceiveData はヒットしません...!

誰もこれを見たことがありますか?誰にもこれが何であるか考えがありますか? これをデバッグするために他に何ができるかわかりません。

0 投票する
1 に答える
345 参照

ios - GKPickercontroller を使用しないと 2 つのデバイスを接続できない

Gamekit を使用して 2 つのデバイスを接続し、少量のデータを転送しようとしています。GKPickerController を使用してこれを行うことができましたが、ユーザー エクスペリエンスを少し向上させるために、これを自動的に達成しようとしています。問題はデリゲートメソッド

が呼び出されていません。

また、これらは 2 つの異なるアプリです。

以下のコードを見つけてください。

0 投票する
2 に答える
546 参照

iphone - Bluetooth を使用して別のデバイスで曲を再生する

アプリにこの曲のプレイリストがあります。Bluetoothを使用して、このプレイリストの曲を別のデバイス(iPhone)で再生したいです。

これは私がそうしてきたことです

スクリーンショットをご覧ください

どうすればいいのかわかりません。誰か助けてください??曲を選択すると、別のデバイスで再生できますか??