ここで入手できるサンプル アプリケーションを使用して Nearby 接続 API をテストしています: https://github.com/googlesamples/android-nearby 一部のデバイスでは機能しないようです。Samsung Galaxy S3 を Nexus 7 に両方向 (ホストとして S3、スレーブとして N7、およびその逆) で正常に接続しました。ただし、Samusung Galaxy S3 を Nexus 5 に接続しようとすると、接続は常に失敗し、ステータス コード 8005 が表示されます。
以下に、ホスト (広告デバイス) に接続するためにスレーブ (検出デバイス) によって呼び出されるメソッドを示します。
private void connectTo(String endpointId, final String endpointName) {
debugLog("connectTo:" + endpointId + ":" + endpointName);
// Send a connection request to a remote endpoint. By passing 'null' for the name,
// the Nearby Connections API will construct a default name based on device model
// such as 'LGE Nexus 5'.
String myName = null;
byte[] myPayload = null;
Nearby.Connections.sendConnectionRequest(mGoogleApiClient, myName, endpointId, myPayload,
new Connections.ConnectionResponseCallback() {
@Override
public void onConnectionResponse(String endpointId, Status status,
byte[] bytes) {
Log.d(TAG, "onConnectionResponse:" + endpointId + ":" + status);
if (status.isSuccess()) {
debugLog("onConnectionResponse: " + endpointName + " SUCCESS");
Toast.makeText(MainActivity.this, "Connected to " + endpointName,
Toast.LENGTH_SHORT).show();
mOtherEndpointId = endpointId;
updateViewVisibility(STATE_CONNECTED);
} else {
debugLog("onConnectionResponse: " + endpointName + " FAILURE. ResponseCode=" + status.getStatusCode() + " statusMessage=" + status.getStatusMessage() );
}
}
}, this);
}
私がいつも得る結果は次
のとおりです。ResponseCode=8005 statusMessage=null
何が起こっているのか手がかりはありますか?