0

私のアプリはマルチピア接続を使用して、IOS7 の他のデバイスにファイルを送信します。このフレームワークを使用すると、複数のデバイスが MCSession に接続でき、接続されているデバイスの数を示す特定の配列があります。この数に変更があったときに通知を受け取りたいのですが、インターネット リンクや質問がたくさんあっても、アレイを KVO に準拠させる方法がわかりません。問題は、この配列が外部から制御されていることです。

[session connectedPeers];

カウントを取得するには、次のようにします。

NSArray* array = [session connectedPeers];
array.count

しかし、変化するのは配列ではなく、[session connectedPeers] です。

この変更を追跡するにはどうすればよいですか?

4

2 に答える 2

1

ドキュメントによると: ([NSArray Class reference]) 1

addObserver:forKeyPath:options:context:

NSArray オブジェクトは監視できないため、このメソッドを NSArray オブジェクトで呼び出すと例外が発生します。配列を観察する代わりに、配列が関連オブジェクトのコレクションである対多関係を観察します。

Wain が述べたように、MCSessionDelegate メソッドを使用することをお勧めします。

于 2014-04-13T00:40:01.600 に答える