| Index: webrtc/examples/androidapp/src/org/appspot/apprtc/PeerConnectionClient.java
 | 
| diff --git a/webrtc/examples/androidapp/src/org/appspot/apprtc/PeerConnectionClient.java b/webrtc/examples/androidapp/src/org/appspot/apprtc/PeerConnectionClient.java
 | 
| index eb4d95906795f37a0ceb999185b6b78994826185..ecd0da4c8606e2a707e25edba65bcf72d5339650 100644
 | 
| --- a/webrtc/examples/androidapp/src/org/appspot/apprtc/PeerConnectionClient.java
 | 
| +++ b/webrtc/examples/androidapp/src/org/appspot/apprtc/PeerConnectionClient.java
 | 
| @@ -184,6 +184,11 @@ public class PeerConnectionClient {
 | 
|      public void onIceCandidate(final IceCandidate candidate);
 | 
|  
 | 
|      /**
 | 
| +     * Callback fired once local ICE candidates are removed.
 | 
| +     */
 | 
| +    public void onIceCandidatesRemoved(final IceCandidate[] candidates);
 | 
| +
 | 
| +    /**
 | 
|       * Callback fired once connection is established (IceConnectionState is
 | 
|       * CONNECTED).
 | 
|       */
 | 
| @@ -655,6 +660,21 @@ public class PeerConnectionClient {
 | 
|      });
 | 
|    }
 | 
|  
 | 
| +  public void removeRemoteIceCandidates(final IceCandidate[] candidates) {
 | 
| +    executor.execute(new Runnable() {
 | 
| +      @Override
 | 
| +      public void run() {
 | 
| +        if (peerConnection == null || isError) {
 | 
| +          return;
 | 
| +        }
 | 
| +        // Drain the queued remote candidates if there is any so that
 | 
| +        // they are processed in the proper order.
 | 
| +        drainCandidates();
 | 
| +        peerConnection.removeIceCandidates(candidates);
 | 
| +      }
 | 
| +    });
 | 
| +  }
 | 
| +
 | 
|    public void setRemoteDescription(final SessionDescription sdp) {
 | 
|      executor.execute(new Runnable() {
 | 
|        @Override
 | 
| @@ -924,6 +944,16 @@ public class PeerConnectionClient {
 | 
|      }
 | 
|  
 | 
|      @Override
 | 
| +    public void onIceCandidatesRemoved(final IceCandidate[] candidates) {
 | 
| +      executor.execute(new Runnable() {
 | 
| +        @Override
 | 
| +        public void run() {
 | 
| +          events.onIceCandidatesRemoved(candidates);
 | 
| +        }
 | 
| +      });
 | 
| +    }
 | 
| +
 | 
| +    @Override
 | 
|      public void onSignalingChange(
 | 
|          PeerConnection.SignalingState newState) {
 | 
|        Log.d(TAG, "SignalingState: " + newState);
 | 
| 
 |