Android Wear (時計から電話へのデータのストリーミング) を少し試しており、CapabilityApi を調べていました。
Wearable.CapabilityApi.getCapability のドキュメントによると、この呼び出しが接続されたノードのみを返すという保証はありません: https://developers.google.com/android/reference/com/google/android/gms/wearable/CapabilityInfo.html #getNodes()
私が疑問に思っているのは、次のようなことをしなければならないのですか?
final CapabilityApi.GetCapabilityResult result =
Wearable.CapabilityApi.getCapability(mGoogleApiClient, RECIEVE_SOUND_DATA_CAPABILITY, Wearable.CapabilityApi.FILTER_REACHABLE).await();
final NodeApi.GetConnectedNodesResult connectedNodes = Wearable.NodeApi.getConnectedNodes(mGoogleApiClient).await();
for (final Node node : result.getCapability().getNodes()) {
if (connectedNodes.getNodes().contains(node)){
sendDataToNode(node, dataSender);
}
}
ノードが実際に接続されているか、または呼び出すだけで十分かどうかを判断するには、次のようにします。
node.isNearby()
データを送る前に?