私のplay-services-nearbyをバージョン'10.2.0 'にアップデートすると、EndpointDiscoveryListenerとConnectionRequestListenerがインタフェースから抽象クラスに変更され、EndClientをEndpointDiscoveryListenerで拡張し、内部クラスConnectionRequestListenerを宣言しています。AppIdentifierも廃止予定です私はグーグルで多くのことを探索したが、私はすべての新しい例を見つけることができない、ここ 私はgithubのplaygameservicesから変更私のコードです:新しいplay-services-nearbyの抽象クラスEndpointDiscoveryListenerおよびConnectionRequestListenerを実装する方法は?
public class NearbyClient extends Connections.EndpointDiscoveryListener implements
GoogleApiClient.ConnectionCallbacks,
GoogleApiClient.OnConnectionFailedListener,
Connections.MessageListener {
private class OnConnectionRequest extends Connections.ConnectionRequestListener {
private NearbyClient mNearbyClient;
OnConnectionRequest(NearbyClient nearbyClient)
{
this.mNearbyClient = nearbyClient;
}
@Override
public void onConnectionRequest(final String remoteEndpointId, final String remoteEndpointName, byte[] payload) {
Log.d(TAG, "onConnectionRequest:" + remoteEndpointId +
":" + remoteEndpointName);
if (mIsHost) {
// The host accepts all connection requests it gets.
byte[] myPayload = null;
Nearby.Connections.acceptConnectionRequest(mGoogleApiClient, remoteEndpointId,
myPayload, mNearbyClient).setResultCallback(new ResultCallback<Status>() {
@Override
public void onResult(Status status) {
Log.d(TAG, "acceptConnectionRequest:" + status + ":" + remoteEndpointId);
if (status.isSuccess()) {
Toast.makeText(mContext, "Connected to " + remoteEndpointName,
Toast.LENGTH_SHORT).show();
// Record connection
HeroParticipant participant = new HeroParticipant(remoteEndpointId, remoteEndpointName);
mConnectedClients.put(remoteEndpointId, participant);
// Notify listener
mListener.onConnectedToEndpoint(remoteEndpointId, remoteEndpointName);
} else {
Toast.makeText(mContext, "Failed to connect to: " + remoteEndpointName,
Toast.LENGTH_SHORT).show();
}
}
});
} else {
// Clients should not be advertising and will reject all connection requests.
Log.w(TAG, "Connection Request to Non-Host Device - Rejecting");
Nearby.Connections.rejectConnectionRequest(mGoogleApiClient, remoteEndpointId);
}
}
}
コードの残りの部分は、一例と同じです。 新しいバージョンを実装する最善の方法は何ですか?
クライアントとして接続するときに「残念ながらGoogle Playサービスが停止しました」というメッセージが表示されます 新しいバージョンは廃止されましたか?
8bitartistを実行しましたか?それは私のために働かなかったので。もしあなたが私に新しいものを送ってくれたら?またはサンプルを更新しました –
サンプルが更新されました:https://github.com/playgameservices/android-basic-samplesしかし、StopDiscovery()またはstopAdvertising()を呼び出すとPlayサービスがクラッシュすることがある既知のバグがあります。彼らはそれを修正するために取り組んでおり、次のSDKの更新になります。 –
エラーが修正された場合はお知らせください –