問題タブ [gamekit]

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 投票する
3 に答える
29669 参照

iphone - NSCoderを使用してNSArrayまたはNSDictionaryをエンコードします

NSCoderメソッドを使用できるかどうか疑問に思いました。

NSArrayまたはNSDictionaryのインスタンスをエンコードします。そうでない場合は、どのようにエンコードしますか?NSKeyedArchived / NSKeyedUnarchiverを使用して、GameKitを使用して電話間でデータを送信しようとしています。試しましたが、配列に保存した文字列を取得できないようです。私が作成したパケットクラスは、パケットタイプ整数と一緒に通過しますが、配列内のデータではないようです。

前もって感謝します!

0 投票する
3 に答える
1187 参照

ios - ゲームキットとiPhone

p2p 接続中にカスタム レベルを配列形式で別の人に送信するようにアプリを設定しました。受信デバイスは、後で使用するために配列をファイルに保存します。アプリケーションでゲームキットをセットアップすると、問題なく別のデバイスを検索して接続できます。デバイスにデータを送信すると問題が発生しますが、受信側のデバイスはデータを受信します (そして、カスタム レベルを正常に保存します) が、後ですぐにクラッシュします。

データの送受信に使用するメソッドを次に示します。

現在、私は自分のデバイスを 2 つ持っていないので、これをテストするのは大変なことでした。そのため、ベータ ビルドを友人に送り、テストしてもらいました (彼は iPod と iPhone を持っています)。これについての助けをいただければ幸いです...

問題が見つからない場合は、おそらく xcode プロジェクト全体を彼に送信し、画面共有を介して彼のコンピューターでプロジェクトを操作して、アプリケーションを効率的にビルドおよびテストします。そして、デバッグモードを使用できるようになります。

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

iphone - GameKit: GKSession マニュアル

GKSession を使用して 2 つのデバイスを接続し、一方をサーバーとして起動し、もう一方をクライアントとして起動したいと考えています。この構成を使用すると、GKPeerPickerController を使用できません。

2 つのデバイスの接続に問題があります。

  • ブルートゥースのみの使用:不可
  • WiFi の使用: 少なくともデバイス間でデータ交換が行われますが、正常に接続されません。

インターフェイスファイルには、

実装では、次のコードを使用してサーバーを起動します。

クライアントは次のコードの使用を開始します。

WiFi の代わりに Bluetooth を強制的に使用するにはどうすればよいですか?

また、これらの呼び出しを実装しました:

開始すると、これをデバッガーに取り込みます。

そして、他のデバイスが検索を開始すると、次のようになります。

ここで何が欠けていますか?

両方のデバイスで Bluetooth が有効になっており、同じ WiFi に接続されていると確信しています。

ありがとう、

r.

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

iphone - ゲームキットiphoneでp2pwifi接続を行う方法

BluetoothとWIFIの両方を使用してp2p通信を行うマルチプレイヤーゲームを実装する必要があります。特にiphone1Gの場合、WIFI経由で接続する必要があります。ただし、ピッカーのデフォルトの接続タイプはBluetoothです。それで、それをWIFIに設定する方法。誰でもWIFI接続のサンプルコードを提案できますか?GKtankを除く。前もって感謝します。

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

iphone - GameKit を使用して iPhone 間で CoreData データを転送する

2 つの iPhone 間で Core Data を介して管理される情報を交換したいアプリケーションがあります。

誰かがこれを試みましたか? もしそうなら、それを行うための最良のアプローチと見なされるものは何ですか (つまり、ファイルで XML や JSON などの中間形式を使用している人々、またはオブジェクトを直接転送できるか)。

質問の範囲が広すぎるように見える場合は申し訳ありませんが、私は転送のアプローチを決定する必要がある段階にあり、この API の経験はありません。

GameKit を使用してデバイス間でオブジェクトを転送するためのコード サンプル、またはそのようなサンプルへのリンクがあれば、非常に感謝しています。

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

iphone - ゲームキット ブルートゥース

Bluetooth 接続に GameKit を使用して作成しようとしているゲームに必要な基本的な手順を理解しようとしています。デバイスが 1 つしかないため、アイデアを簡単に試すことができません。

このゲームには、GameKit を介して Bluetooth 経由で最大 2 人のプレイヤーが参加し、送受信する唯一のデータは、位置と方向のデータのみを含む「ショット」です。

これは私が起こるべきだと思うことです。私が犯した間違いを誰かに指摘してもらいたいだけです:

  • ゲームは、GKPeerPickerController に「GKPeerPickerConnectionTypeNearby」の connectionTypeMask を提示し、デリゲートを「self」に設定することから始まります。

  • GKPeerPickerController デリゲート メソッド「peerPickerController:didConnectPeer:toSession:」が実装され、セッション dataReceiveHandler を self に設定します。peerID は、接続されているすべてのピア ID を保持する NSMutableArray に追加されます。(常に 1 つのピアのみが接続されている必要があります)。

  • ゲームごとに 1 つのピア接続のみを強制するために、メソッド「session:didReceiveConnectionRequestFromPeer:」は、接続されたピア ID を保持する NSMutableArray の「count」プロパティをチェックします。「count」>0 の場合は、「denyConnectionFromPeer:」を呼び出して応答します。それ以外の場合は、「acceptConnectionFromPeer:error:」を呼び出します。

  • ショットを送信するために、ゲームは「sendData:toPeers:withDataMode:error:」を呼び出します。

  • ショットを受信するために、ゲームは「receiveData:fromPeer:inSession:context:」に応答します。

不足している手順はありますか? たとえば、私が接続する前にユーザーが私に接続しようとした場合、私の GKPeerPickerController はどうなりますか? それを却下する方法をどうやって知ることができますか?

また、別の iPhone/iPod がなければテストできません。

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

iphone - NSSetをNSDataに設定してから、GameKitの場合は再度元に戻しますか?

異なるiPhoneで実行されている同じアプリの2つ間で画像編集の同期を実行しようとしています。NSSet *をあるデバイスから別のデバイスに送信し(NSDataにカプセル化することを想定しています)、これを復号化してNSSetに戻し、touchesMovedタイプの関数で使用したいと思います。これは実行可能ですか、それとも代わりにUIImagesの同期に取り組む必要がありますか?UIImageの同期では、リアルタイムの対話には待ち時間が長すぎるのではないかと心配しています。

ご協力いただきありがとうございます!

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

iphone - iPhone GameKit ピッカーの基本的な接続の問題

これは、私が iPhone 開発で見た中で最も興味深いものの 1 つです。

次の質問は、Apple の SDK の例 (タンクの例) を使用しているため、コードとは関係ありません。

私は 3GS iPhone と 3G iPhone の両方で GameKit ピッカー画面を表示しています。どちらも、最終的には範囲内の他の電話を問題なく表示します (ただし、約 25 秒かかります)。

3GS で 3G iPhone を選択すると、3G が接続要求を受け取り、接続を確立できます。ただし、その逆では絶対に機能しません。両方の電話で Bluetooth がオンになっており、両方の電話で最新の OS バージョンが実行されています。

単純な事実として、私は SDK の例を使用していますが、接続を発行しようとしている 3G では機能していません。この非常に奇妙な動作を説明する方法はありますか?

読んでくれてありがとう!

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

iphone - Cocos2D CCMenuItem のセレクター内で GKPeerPickerController を使用する

そこで、ユーザーがマルチプレイヤー メニュー項目をクリックすると GKPeerPickerController が表示されるように、GameKit を Cocos2D と共に使用しようとしています。しかし、私はいくつかの障害に遭遇しています。コンパイルしたくないようです。ただし、セレクターにあるコード内でエラーは発生しません。とにかくここにコードがあります...

私が得ているエラーメッセージは...

何か案は?