我认为我对于Strategy.P2P_CLUSTER连接是正确的,但我得到了:
D/Meshy: onEndpointFound (we want to connect to someone!) (endpointId=CL36, serviceId=meshy.SERVICE_ID, endpointName=365589)
W/Meshy: acceptConnection failed with 8011 STATUS_ENDPOINT_UNKNOWN
这很奇怪,没有人对连接请求说“不” . 也许我的生命周期错了?
val mEndpointDiscoveryCallback = object : EndpointDiscoveryCallback() {
// We found someone to connect to!
override fun onEndpointFound(endpointId: String, info: DiscoveredEndpointInfo) {
Log.d(TAG, "onEndpointFound (we want to connect to someone!) (endpointId=$endpointId, serviceId=${info.serviceId}, endpointName=${info.endpointName})")
if (SERVICE_ID == info.serviceId) {
Nearby.Connections.acceptConnection(mGoogleApiClient, endpointId, mPayloadCallback)
.setResultCallback { status ->
if (!status.isSuccess) {
Log.w(TAG, "acceptConnection failed with ${status.toReadable()}")
} else {
Log.d(TAG, "acceptConnection success")
endpoints.add(endpointId)
}
}
} else {
Log.w(TAG, "onEndpointFound ignoring unknown endpointId=$endpointId serviceId=${info.serviceId}")
}
}
1 回答
您缺少对requestConnection()的调用 - 请参阅https://developers.google.com/nearby/connections/android/manage-connections处的代码片段了解预期的生命周期/流程 .