FC2ブログ

GKSessionDelegate メモ

GKSessionDelegate メモ
オブジェクトがGKSessionオブジェクトの動作を制御するGKSessionDelegateプロトコルを実装しています。
他の可視ピアがセッションにその状態を相対的に変更したときにデリゲートが呼び出されます。
それはまた別のピアがセッションへの接続を許可されているかどうかを判断するために呼び出されます。

- (void)session:(GKSession *)session connectionWithPeerFailed:(NSString *)peerID withError:(NSError *)error
別のピアに接続しようとするが失敗したときにデリゲートによって受信された。 (必須)

Parameters
session
メッセージを受信したセッション。
peerID
ユニークなピアを識別する文字列。
error
エラーが発生しました。
Discussion
errorパラメータは、接続が失敗した理由をユーザに知らせるために使用することができます。

Important
GKPeerPickerControllerオブジェクトがセッションを設定するために使用されている場合、
コントローラは自動的にこのメッセージを処理します。
ピアピッカー]ダイアログボックスが使用されている場合、デリゲートはそれを無視することができます。

- (void)session:(GKSession *)session didFailWithError:(NSError *)error
重大なエラーは、セッションで発生した時に、デリゲートに送信されます。 (必須)
Parameters
session
失敗しました。セッション
error
エラーが発生しました。
Discussion
深刻な内部エラーがセッション内で発生したときにこのメソッドが呼び出されます。
アプリケーションが他のピアからセッションを切断し、セッションを解放する必要があります。

- (void)session:(GKSession *)session didReceiveConnectionRequestFromPeer:(NSString *)peerID
リモートピアがセッションへの接続を作成したいときに、デリゲートによって受信された。 (必須)
Parameters
session
要求を受信しました。セッション
peerID
ユニークなピアを識別する文字列。
Discussion
それは接続を拒否したい場合の方法:エラー:メソッドは、接続またはdenyConnectionFromPeerを受け入れるようにしたい
場合デリゲートは、セッションのacceptConnectionFromPeerを呼び出す必要があります。

Important
GKPeerPickerControllerオブジェクトがセッションを設定するために使用されている場合、コントローラは自動的にこ
のメッセージを処理します。
ピアピッカー]ダイアログボックスが使用されている場合、デリゲートはそれを無視することができます。
アプリケーションがセッションを設定するにはGKPeerPickerControllerオブジェクトを使用していない場合は、
上記のように、デリゲートは、このメソッドを実装する必要があります。

- (void)session:(GKSession *)session peer:(NSString *)peerID didChangeState:(GKPeerConnectionState)state
デリゲートピアの状態が変化するが受信した。 (必須)

Parameters
session
アップデートを受信したセッション。
peerID
ピアを識別する文字列。
state
状態は、ピアがに変更されました。
Discussion
それは自身への相対的な状態たびに目に見えるピアの変更セッションでは、このメソッドを呼び出します。
あなたの代理人が取るべきアクションは、ピアがに移動どのような状態に依存します。
ピアが最初のセッションから見えるようになるとき、それはGKPeerStateAvailableの状態が表示されます。
アプリケーションはそのユーザーインターフェイスにこのピアを表示する必要があります。
ピアがGKPeerStateUnavailableにその状態を変更した場合、それはもはや接続要求を受け入れないと、
アプリケーションがユーザーインターフェイスから削除する必要があります。
デリゲートは、GKPeerStateConnecting変更を無視し、セッションを実装する必要があります。
代わりにメソッドdidReceiveConnectionRequestFromPeerします。
ピアは(GKPeerStateConnected)接続されている場合、アプリケーションは、データをピアに送信し
、ピアからデータを受信することができる。
ピアへの接続が失われたり、されている場合、ピアが意図的に(GKPeerStateDisconnected)切断した場合、
アプリケーションがこのピアにメッセージを送信を停止する必要があります。

Important
GKPeerPickerControllerオブジェクトがセッションを設定するために使用されている場合、コントローラは、
GKPeerStateAvailable GKPeerStateUnavailable、とGKPeerStateConnected状態の更新を処理します。
ピアピッカー]ダイアログボックスが使用されている場合、デリゲートは、状態の変化を無視することができます。 姉妹サイトだよ! よかったらみてね!
スポンサーサイト

GKPeerPickerControllerDelegate メモ

GKPeerPickerControllerDelegate メモ

GKPeerPickerControllerDelegateプロトコルはGKPeerPickerController
オブジェクトの動作をカスタマイズするためのオブジェクトに実装されています。
デリゲートは、ピアピッカーセッションオブジェクトを作成し、セッションがコン
トローラによって構成されているように応答するために呼び出されます。

- (void)peerPickerController:(GKPeerPickerController *)picker didConnectPeer:(NSString *)peerID toSession:(GKSession *)session
コントローラがセッションにピアに接続されているデリゲートを指示します。

Parameters
picker
ピアが接続されているコントローラ。
peerID
セッションに接続しているピアの識別文字列。
session
ピアが接続されているセッション。
Discussion
ピアがセッションに接続されると、アプリケーションは、セッションの所有権を
取得ピアピッカーを却下し、他のピアと通信するためにセッションを使用する必要があります。

Important
プロトコルのオプションですが、ゲームキット、アプリケーションがこのメソッドを実装する予定です。

- (void)peerPickerController:(GKPeerPickerController *)picker didSelectConnectionType:(GKPeerPickerConnectionType)type
ユーザーは接続の種類を選択したデリゲートを指示します。

Parameters
picker
ピアピッカー]ダイアログボックスのコントローラ。
type
ネットワーク接続のタイプは、ユーザーによって選択された。
Discussion
ピア·ピッカー、ユーザーが複数の接続タイプを選択できるように設定されている場合は、
ユーザーが使用する接続タイプを選択すると、このメソッドが呼び出されます。
あなたが特定の接続タイプに対応した動作をオーバーライドする場合、デリゲートは、このメソッドを実装しています。

Important
iOS3.0では、ピア·ピッカーは、Bluetooth接続(GKPeerPickerConnectionTypeNearby)を設定できます。
ユーザーがインターネット接続(GKPeerPickerConnectionTypeOnline)を選択した場合、デリゲートは、
ダイアログを閉じ、インターネット接続を設定するには、独自のユーザーインタフェースを提示する必要があります。

- (GKSession *)peerPickerController:(GKPeerPickerController *)picker sessionForConnectionType:(GKPeerPickerConnectionType)type
指定された接続タイプのためのセッションを返すようにデリゲートを要求します。

Parameters
picker
コントローラは、セッションを要求します。
type
接続コントローラのタイプを設定したいと考えています。

Discussion
デリゲートを見つけると他のデバイスへの接続に使用するGKSessionを提供する責任があります。
ピアピッカーがセッションを必要とする場合には、このメソッドを呼び出します。
アプリケーションは、新しいセッションを作成またはピアの選択以前に作成されたセッションを返すことができます。
アプリケーションがピアピッカーに返すセッションでは、ピア(GKSessionModePeer)として自身をアドバタイズする必要があります。
デリゲートは、このメソッドを実装していないと、ユーザーがタイプGKPeerPickerConnectionTypeNearbyのネットワークを
選択した場合は、ピアコントローラは、デフォルトのセッションIDおよびdisplayNameパラメータを持つピア
(GKSessionModePeer)として自身をアドバタイズし、新しいセッションを割り当てます。

Special Considerations
iOS3.0では、デリゲートは、タイプGKPeerPickerConnectionTypeNearbyのネットワークの要求を受信します。

- (void)peerPickerControllerDidCancel:(GKPeerPickerController *)picker
ユーザーが接続試行をキャンセルしたデリゲートを指示します。

Parameters
picker
ピアピッカー]ダイアログボックスのコントローラ。
Discussion
このメソッドが復帰すると、コントローラは、ピッカーのインターフェイスを閉じます。
Important
プロトコルのオプションですが、ゲームキット、アプリケーションがこのメソッドを実装する予定です。 姉妹サイトだよ! よかったらみてね!

GKPeerPickerController メモ

GKPeerPickerController メモ

GKPeerPickerControllerクラスは、1 IOSデバイスが検出され、別のに接続できるようにする
ための標準的なユーザーインターフェイスを提供します。
結果は、2つのデバイスを接続する構成GKSessionオブジェクトです。
GKPeerPickerControllerオブジェクトを使用すると、アプリケーションは、コントローラを作成し、
デリゲートを追加し、許可される接続の種類を設定し、ピアピッカーを示しています。
ユーザーがピアピッカーのインターフェイス内で選択を行うようにデリゲートが呼び出されます。
のiOS3.0では、ピア·ピッカーは、Bluetoothとインターネット接続の間で選択するように構成することができます。

Important ユーザーがピアピッカーでインターネット接続を選択することもできますが、GKPeerPickerControllerは、
それらを構成するためのユーザーインターフェイスはありません。
アプリケーションがインターネット接続を許可するピアピッカーを設定した場合、アプリケーションは、ピアピッカーを閉じ、
インターネット接続を設定するために独自のインタフェースを提示する必要があります。
それはピアピッカー]ダイアログボックスを閉じるした後のiOS3.0で、アプリケーションはピアピッカーオブジェクトを
解放する必要があります。
それがユーザーに表示された後のiOS3.1以降では、アプリケーションがピアピッカーを解放することがあります。
これを行う場合は、ダイアログが消えた後、ピアピッカーコントローラが自動的に解放されています。

Properties

connectionTypesMask
接続ダイアログの種類を決定するマスクは、ユーザに提示する。

Discussion
あなたのアプリケーションは、ピアピッカーを表示する前に許容する接続の種類を設定します。
アプリケーションが複数の接続タイプを許可する場合、ピアピッカーはユーザーが使用する接続の種類をご用意しております。
マスクのデフォルト値はGKPeerPickerConnectionTypeNearbyです。
GKPeerPickerConnectionTypeOnline WiFi
GKPeerPickerConnectionTypeNearby :bluetooth

Important
iOS3.0では、GKPeerPickerConnectionTypeNearbyが許可した接続の種類のいずれかであることが要求される。
あなたのアプリケーションが含まれていない場合、例外がスローされます。

- (void)show
ユーザーにピアピッカーダイアログが表示されます。
Discussion
それは却下されたときにそれが示され、自動解放されたときのiOS3.1以降では、ピア·ピッカーが保持されます。

- (void)dismiss
ピアピッカー]ダイアログボックスを非表示にします。

Discussion
コントローラのデリゲートは、それが不要になったとき、ピアピッカーを却下する責任があります。
それは却下されたときにそれが示され、自動解放されたときのiOS3.1以降では、ピア·ピッカーが保持されます。 姉妹サイトだよ! よかったらみてね!

GKSession メモ

GKSession メモ

GKSessionオブジェクトは、BluetoothやWi-Fiを使って近くのiOSデバイスを検出してそこに接続する機能を提供します。
セッションは、主にピアで動作します。
ピアは、任意のIOSデバイスがGKSessionオブジェクトを作成し、構成することによって見えるようになります。
各ピアは、一意の識別子によって識別されるピアID(PEERID)文字列と呼ばれています。
アプリケーションがリモートピアのユーザーが判読できる名前を取得し、そのピアに接続しようとしPEERID文字列を使用
することができます。
同様に、セッションのピアIDが近くにある他のピアに表示されます。
接続が確立された後、アプリケーションはそれを送信しようとしているデータパケットに対応するために、リモートピアの
IDを使用します。
ピアは、セッションID(セッションID)と呼ばれる彼らが実装するサービスを識別する一意の文字列を使用して、他のピアを発見する。
セッションはそのセッションID(クライアントなど)で、他のピアの広告を検索するか、またはサーバーと同時にクライアント(
ピアの両方として機能するように、セッションID(サーバなど)をブロードキャストするように設定できます。
アプリケーションがGKSessionDelegateプロトコルを実装し、デリゲートを使用してセッションの動作を制御します。
リモートピアが発見されたときにそれらのピアがリモートピアの状態が変化し、セッションに接続しようとするとき、およびとき
にデリゲートが呼び出されます。
それがリモートピアから受信したセッションがデータを転送できるように、アプリケーションは、セッションへのデータハンドラを
提供します。
データ·ハンドラーは、別のオブジェクトまたはデリゲートと同じオブジェクトにすることができます。
GKSessionメソッドはスレッドセーフであると任意のスレッドから呼び出すことができます。
ただし、セッションは常にメインスレッド上でデリゲートを呼び出します。

- (void)setDataReceiveHandler:(id)handler withContext:(void *)context
セッションに接続されている他のピアから受信したデータを処理するオブジェクトを設定します。

Parameters
handler
あなたはそれが他のピアからデータを受信したときに呼び出すようにセッションをしたいオブジェクト。
context
任意のデータは、ハンドラの呼び出しごとに渡される。
Discussion
ハンドラは、次のシグネチャを持つメソッドを実装する必要があります。
- (void) receiveData:(NSData *)data fromPeer:(NSString *)peer inSession: (GKSession *)session context:(void *)context;

データがリモートピアから受信したバイトを含む場合、ピアはピアを識別する文字列ですが、セッションがデータを受信したセッションであり、
コンテキストはsetDataReceiveHandlerの元の呼び出しに渡されたのと同じコンテキストである:withContext。

Important
他のピアから受信したデータは信頼できないデータとして扱われるべきである。
セキュリティ上の脆弱性を回避するためには、セッションから受信するデータを検証し、慎重にコードを記述してください。
詳細については、安全なコーディングのガイドを参照してください。 姉妹サイトだよ! よかったらみてね!

NSKeyedArchiver メモ

NSKeyedArchiver メモ

NSKeyedArchiver、NSCoderの具象サブクラスでは、ファイルに格納することができるアーキテクチ
ャに依存しない形式にオブジェクト(およびスカラー値)をエンコードする方法を提供します。
アーカイブするときはオブジェクトのセットを、各オブジェクトのクラス情報とインスタンス変数は
、アーカイブに書き込まれます。
NSKeyedArchiverのコンパニオンクラスNSKeyedUnarchiver、デコードし、アーカイブ内のデータ
と元のセットに相当するオブジェクトのセットを作成します。
キーのアーカイブは、アーカイブにエンコードされたすべてのオブジェクトと値は名前、またはキーを
与えられていることの非キーのアーカイブとは異なります。
デコード時に、非キーのアーカイブと、値は、それらがエンコードされたのと同じ順序でデコードする
必要があります。
復号化キーのアーカイブ、値を​​名前で要求されているためと、値はシーケンスのまたはまったく出デコ
ードすることができます。
キーのアーカイブは、したがって、前方と後方互換性のためのより良いサポートを提供しています。
エンコードされた値に与えられたキーは、エンコードされ、現在のオブジェクトのスコープ内で一意で
ある必要があります。
キーアーカイブが階層構造になって、AとBが同じクラスのインスタンスである場合であっても、そのイン
スタンス変数をエンコードするためにオブジェクトによって使用されるキーは、オブジェクトBによって
使用されるキーと競合しないように。
単一のオブジェクト内で、しかし、サブクラスによって使用されるキーは、そのスーパークラスで使用さ
れるキーと競合することができます。
NSArchiverオブジェクトは、ファイルまたはあなたが提供する可変データオブジェクト
(NSMutableDataのインスタンス)へのアーカイブデータを書き込むことができます。

+ (NSData *)archivedDataWithRootObject:(id)rootObject
ルートオブジェクトを指定されたオブジェクトグラフのエンコード形式を含むNSDataオブジェクトを返します。

Parameters
rootObject
アーカイブへのオブジェクトグラフのルート。
Return Value
ルートオブジェクトrootObjectでオブジェクトグラフのエンコード形式を含むNSDataオブジェクト。
アーカイブの形式はNSPropertyListBinaryFormat_v1_0です。 姉妹サイトだよ! よかったらみてね!

NSKeyedUnarchiver メモ

NSKeyedUnarchiver メモ

NSKeyedUnarchiver、NSCoderの具象サブクラスでは、復号キーをアーカイブから
名前付きオブジェクトのセット(スカラー値)のメソッドを定義します。
そのようなアーカイブはNSKeyedArchiverクラスのインスタンスによって生成されます。
キーのアーカイブは、オブジェクトの階層としてエンコードされます。
階層内の各オブジェクトは、他のオブジェクトがエンコードされているに名前空間として
の役割を果たします。
デコードするための使用可能なオブジェクトは、特定のオブジェクトの直接の範囲内で
エンコードされたものに制限されています。
オブジェクトは、より低い、より高い、またはこの特定のオブジェクトへの平行
、できないかどうか、他の階層でエンコードされています。
このように、そのインスタンス変数をエンコードするために特定のオブジェクトによって
使用されるキーは、そのオブジェクトのスコープ内で一意である必要があります。
あなたが、デコードのいずれかを呼び出す場合...アーカイブ内に存在しないキーを使用して、
このクラスのメソッドは、非正の値が返されます。
この値はデコードされたタイプによって異なります。
たとえば、キーがアーカイブに存在しない場合、decodeBoolForKeyは:返されません、
decodeIntForKey:0を返し、そしてdecodeObjectForKey:nilを返します。
NSKeyedUnarchiverは、限られた型変換をサポートしています。
標準のintまたは明示的な32ビットまたは64ビット整数が、整数値のデコード方法のいずれかを
使用してデコードできるかどうかを整数の任意のタイプとしてエンコードされた値。
同様に、floatまたはdoubleとしてエンコードされた値がfloat型またはdouble型の値の
いずれかとしてデコードすることができます。
エンコードされた値が強制型内に収まるように大きすぎる場合は、復号化方法は、
NSRangeExceptionを発生させます。
さらに、互換性のない型に値を強制しようとすると、たとえばデコードをfloatとしてintは、
復号化方法は、NSInvalidUnarchiveOperationExceptionを発生させます。

- (id)initForReadingWithData:(NSData *)data

デコードする前にNSKeyedArchiverでエンコードされたアーカイブの受信機を初期化します。

Parameters
data
アーカイブは、以前はNSKeyedArchiverでエンコードされています。

Return Value
NSKeyedUnarchiverオブジェクトは、復号化データのために初期化されます。

Discussion
あなたはデータのデコードを終了するときは、finishDecodingを呼び出す必要があります。
データが有効なアーカイブでない場合、このメソッドはNSInvalidArchiveOperationExceptionを発生させます。 姉妹サイトだよ! よかったらみてね!

Bluetooth メモ

Bluetooth メモ

従来のBluetooth通信のみを行うデバイスの呼称です。Bluetooth Smartデバイスとの通信はできません。 姉妹サイトだよ! よかったらみてね!

Bluetooth Smart Ready メモ

Bluetooth Smart Ready メモ

Bluetooth LEによる低消費電力モードで通信をする子機との通信に対応し、なおかつ、従来のBluetooth機器と
の通信ができるデバイスの呼称です。 姉妹サイトだよ! よかったらみてね!

Bluetooth Smart メモ

Bluetooth Smart メモ

Bluetooth LEによる低消費電力モードでのみ通信を行うデバイスの呼称です。センサなどで情報を収集し
、情報を送信する子機に当たるデバイスが想定されています。Bluetooth Smart Readyデバイスとの間でのみ通信が可能です。 姉妹サイトだよ! よかったらみてね!

スマホニュース 20120712

黎明期――モバイルワークが誕生した最初の一歩

「iPhoneとiPad持ってない人、人生悔い改めて」――孫社長が講演

写真で解説する「ARROWS Me F-11D」

位置を「可視化」することの価値

ソフトバンクBB、iPhone用背面カバーとスマートフォン向け充電アイテム2種を発売

第10回 iPhoneユーザーのためのWi-Fiスポット切り捨て設定術 姉妹サイトだよ! よかったらみてね!
twitter
twitter アカウント @drum_kuroneko 気軽にフォローしてください。
誰でも簡単に開発ができます!!
人気ナンバー1
自己紹介

yuutyan0205

プロガー:yuutyan0205
きままな自由人です。

たまにプログラミングを行っています。

仕事ください・・・

開発者アプリ一覧 気になったらダウンロードしてください。
開発環境おすすめ
カレンダー
06 | 2012/07 | 08
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -
最新記事
月別アーカイブ
カテゴリ
アクセスランキング
[ジャンルランキング]
コンピュータ
1074位
アクセスランキングを見る>>

[サブジャンルランキング]
マック
53位
アクセスランキングを見る>>
訪問者数
現在の訪問者数
現在の閲覧者数:
全記事表示リンク

全ての記事を表示する

相互リンク希望の方とご質問ある方ご連絡ください。

名前:
メール:
件名:
本文: