Revert "This adds an Android apk for running tests on  the Java layer of PeerConnection."

This reverts r7732

Reason: Breaks compilation on Linux:
[813/818] LINK libjingle_media_unittest
FAILED: cd ../../talk; build/build_jar.sh /usr/lib/jvm/java-7-openjdk-amd64 ../out/Debug/libjingle_peerconnection_test.jar ../out/Debug/obj/talk/libjingle_peerconnection_test_jar.gen app/webrtc/javatests/src:../out/Debug/libjingle_peerconnection.jar:../third_party/junit/junit-4.11.jar app/webrtc/java/testcommon/src/org/webrtc/PeerConnectionTest.java app/webrtc/javatests/src/org/webrtc/PeerConnectionTestJava.java
build/build_jar.sh: Entering directory `/mnt/data/b/build/slave/linux64/build/src/talk'
app/webrtc/java/testcommon/src/org/webrtc/PeerConnectionTest.java:46:warning: [deprecation] Assert in junit.framework has been deprecated
import static junit.framework.Assert.*;
                             ^
app/webrtc/javatests/src/org/webrtc/PeerConnectionTestJava.java:36:error: cannot find symbol
  @Test
   ^
  symbol:   class Test
  location: class PeerConnectionTestJava
app/webrtc/javatests/src/org/webrtc/PeerConnectionTestJava.java:43:error: cannot find symbol
  @Test
   ^
  symbol:   class Test
  location: class PeerConnectionTestJava
2 errors
1 warning
ninja: build stopped: subcommand failed.

TBR=perkj@webrtc.org
BUG=

Review URL: https://webrtc-codereview.appspot.com/32169004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7733 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/talk/app/webrtc/androidtests/AndroidManifest.xml b/talk/app/webrtc/androidtests/AndroidManifest.xml
deleted file mode 100644
index 3bcd99b..0000000
--- a/talk/app/webrtc/androidtests/AndroidManifest.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-    package="org.webrtc.test"
-    android:versionCode="1"
-    android:versionName="1.0" >
-    <uses-feature android:name="android.hardware.camera" />
-    <uses-feature android:name="android.hardware.camera.autofocus" />
-    <uses-feature android:glEsVersion="0x00020000" android:required="true" />
-
-    <uses-sdk android:minSdkVersion="13" android:targetSdkVersion="21" />
-
-    <uses-permission android:name="android.permission.CAMERA" />
-    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
-    <uses-permission android:name="android.permission.RECORD_AUDIO" />
-    <uses-permission android:name="android.permission.INTERNET" />
-    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
-
-    <instrumentation
-        android:name="android.test.InstrumentationTestRunner"
-        android:targetPackage="org.webrtc.test" />
-
-    <application
-        android:icon="@drawable/ic_launcher"
-        android:label="@string/app_name" >
-        <uses-library android:name="android.test.runner" />
-    </application>
-
-</manifest>
diff --git a/talk/app/webrtc/androidtests/ant.properties b/talk/app/webrtc/androidtests/ant.properties
deleted file mode 100644
index bc05353..0000000
--- a/talk/app/webrtc/androidtests/ant.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-# This file is used to override default values used by the Ant build system.
-#
-# This file must be checked into Version Control Systems, as it is
-# integral to the build system of your project.
-
-# This file is only used by the Ant script.
-
-# You can use this to override default values such as
-#  'source.dir' for the location of your java source folder and
-#  'out.dir' for the location of your output folder.
-
-# You can also use it define how the release builds are signed by declaring
-# the following properties:
-#  'key.store' for the location of your keystore and
-#  'key.alias' for the name of the key to use.
-# The password will be asked during the build when you use the 'release' target.
-
-source.dir=../java/testcommon/src;src
\ No newline at end of file
diff --git a/talk/app/webrtc/androidtests/build.xml b/talk/app/webrtc/androidtests/build.xml
deleted file mode 100644
index cb4cb7a..0000000
--- a/talk/app/webrtc/androidtests/build.xml
+++ /dev/null
@@ -1,92 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project name="libjingle_peerconnection_android_unittest" default="help">
-
-    <!-- The local.properties file is created and updated by the 'android' tool.
-         It contains the path to the SDK. It should *NOT* be checked into
-         Version Control Systems. -->
-    <property file="local.properties" />
-
-    <!-- The ant.properties file can be created by you. It is only edited by the
-         'android' tool to add properties to it.
-         This is the place to change some Ant specific build properties.
-         Here are some properties you may want to change/update:
-
-         source.dir
-             The name of the source directory. Default is 'src'.
-         out.dir
-             The name of the output directory. Default is 'bin'.
-
-         For other overridable properties, look at the beginning of the rules
-         files in the SDK, at tools/ant/build.xml
-
-         Properties related to the SDK location or the project target should
-         be updated using the 'android' tool with the 'update' action.
-
-         This file is an integral part of the build system for your
-         application and should be checked into Version Control Systems.
-
-         -->
-    <property file="ant.properties" />
-
-    <!-- if sdk.dir was not set from one of the property file, then
-         get it from the ANDROID_HOME env var.
-         This must be done before we load project.properties since
-         the proguard config can use sdk.dir -->
-    <property environment="env" />
-    <condition property="sdk.dir" value="${env.ANDROID_SDK_ROOT}">
-        <isset property="env.ANDROID_SDK_ROOT" />
-    </condition>
-
-    <!-- The project.properties file is created and updated by the 'android'
-         tool, as well as ADT.
-
-         This contains project specific properties such as project target, and library
-         dependencies. Lower level build properties are stored in ant.properties
-         (or in .classpath for Eclipse projects).
-
-         This file is an integral part of the build system for your
-         application and should be checked into Version Control Systems. -->
-    <loadproperties srcFile="project.properties" />
-
-    <!-- quick check on sdk.dir -->
-    <fail
-            message="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through the ANDROID_HOME environment variable."
-            unless="sdk.dir"
-    />
-
-    <!--
-        Import per project custom build rules if present at the root of the project.
-        This is the place to put custom intermediary targets such as:
-            -pre-build
-            -pre-compile
-            -post-compile (This is typically used for code obfuscation.
-                           Compiled code location: ${out.classes.absolute.dir}
-                           If this is not done in place, override ${out.dex.input.absolute.dir})
-            -post-package
-            -post-build
-            -pre-clean
-    -->
-    <import file="custom_rules.xml" optional="true" />
-
-    <!-- Import the actual build file.
-
-         To customize existing targets, there are two options:
-         - Customize only one target:
-             - copy/paste the target into this file, *before* the
-               <import> task.
-             - customize it to your needs.
-         - Customize the whole content of build.xml
-             - copy/paste the content of the rules files (minus the top node)
-               into this file, replacing the <import> task.
-             - customize to your needs.
-
-         ***********************
-         ****** IMPORTANT ******
-         ***********************
-         In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
-         in order to avoid having your file be overridden by tools such as "android update project"
-    -->
-    <!-- version-tag: 1 -->
-    <import file="${sdk.dir}/tools/ant/build.xml" />
-
-</project>
diff --git a/talk/app/webrtc/androidtests/jni/Android.mk b/talk/app/webrtc/androidtests/jni/Android.mk
deleted file mode 100644
index 8e80160..0000000
--- a/talk/app/webrtc/androidtests/jni/Android.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-# This space intentionally left blank (required for Android build system).
-
diff --git a/talk/app/webrtc/androidtests/project.properties b/talk/app/webrtc/androidtests/project.properties
deleted file mode 100644
index 47b7078..0000000
--- a/talk/app/webrtc/androidtests/project.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-# This file is automatically generated by Android Tools.
-# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
-#
-# This file must be checked in Version Control Systems.
-#
-# To customize properties used by the Ant build system edit
-# "ant.properties", and override values to adapt the script to your
-# project structure.
-#
-# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
-#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
-
-# Project target.
-target=android-21
-
-java.compilerargs=-Xlint:all -Werror
diff --git a/talk/app/webrtc/androidtests/res/drawable-hdpi/ic_launcher.png b/talk/app/webrtc/androidtests/res/drawable-hdpi/ic_launcher.png
deleted file mode 100644
index 96a442e..0000000
--- a/talk/app/webrtc/androidtests/res/drawable-hdpi/ic_launcher.png
+++ /dev/null
Binary files differ
diff --git a/talk/app/webrtc/androidtests/res/drawable-ldpi/ic_launcher.png b/talk/app/webrtc/androidtests/res/drawable-ldpi/ic_launcher.png
deleted file mode 100644
index 9923872..0000000
--- a/talk/app/webrtc/androidtests/res/drawable-ldpi/ic_launcher.png
+++ /dev/null
Binary files differ
diff --git a/talk/app/webrtc/androidtests/res/drawable-mdpi/ic_launcher.png b/talk/app/webrtc/androidtests/res/drawable-mdpi/ic_launcher.png
deleted file mode 100644
index 359047d..0000000
--- a/talk/app/webrtc/androidtests/res/drawable-mdpi/ic_launcher.png
+++ /dev/null
Binary files differ
diff --git a/talk/app/webrtc/androidtests/res/drawable-xhdpi/ic_launcher.png b/talk/app/webrtc/androidtests/res/drawable-xhdpi/ic_launcher.png
deleted file mode 100644
index 71c6d76..0000000
--- a/talk/app/webrtc/androidtests/res/drawable-xhdpi/ic_launcher.png
+++ /dev/null
Binary files differ
diff --git a/talk/app/webrtc/androidtests/res/values/strings.xml b/talk/app/webrtc/androidtests/res/values/strings.xml
deleted file mode 100644
index dfe63f8..0000000
--- a/talk/app/webrtc/androidtests/res/values/strings.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-
-    <string name="app_name">AndroidPeerConnectionTests</string>
-
-</resources>
diff --git a/talk/app/webrtc/androidtests/src/org/webrtc/PeerConnectionAndroidTest.java b/talk/app/webrtc/androidtests/src/org/webrtc/PeerConnectionAndroidTest.java
deleted file mode 100644
index 228d35c..0000000
--- a/talk/app/webrtc/androidtests/src/org/webrtc/PeerConnectionAndroidTest.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * libjingle
- * Copyright 2014, Google Inc.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- *  1. Redistributions of source code must retain the above copyright notice,
- *     this list of conditions and the following disclaimer.
- *  2. Redistributions in binary form must reproduce the above copyright notice,
- *     this list of conditions and the following disclaimer in the documentation
- *     and/or other materials provided with the distribution.
- *  3. The name of the author may not be used to endorse or promote products
- *     derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-package org.webrtc;
-
-import android.test.ActivityTestCase;
-
-public class PeerConnectionAndroidTest extends ActivityTestCase {
-  private PeerConnectionTest test = new PeerConnectionTest();
-
-  @Override
-  protected void setUp() {
-    assertTrue(PeerConnectionFactory.initializeAndroidGlobals(
-        getInstrumentation().getContext(), true,
-        true, null));
-  }
-
-  public void testCompleteSession() throws Exception {
-    // TODO(perkj): Investigate if |test.initializeThreadCheck()| can be used
-    // on android as well. Currently this check fail.
-    test.doTest();
-  }
-
-
-}
diff --git a/talk/app/webrtc/javatests/libjingle_peerconnection_java_unittest.sh b/talk/app/webrtc/javatests/libjingle_peerconnection_java_unittest.sh
index 4f8c74a..0ecb730 100644
--- a/talk/app/webrtc/javatests/libjingle_peerconnection_java_unittest.sh
+++ b/talk/app/webrtc/javatests/libjingle_peerconnection_java_unittest.sh
@@ -44,4 +44,4 @@
 export JAVA_HOME=GYP_JAVA_HOME
 
 ${JAVA_HOME}/bin/java -Xcheck:jni -classpath $CLASSPATH \
-    junit.textui.TestRunner org.webrtc.PeerConnectionTestJava
+    junit.textui.TestRunner org.webrtc.PeerConnectionTest
diff --git a/talk/app/webrtc/java/testcommon/src/org/webrtc/PeerConnectionTest.java b/talk/app/webrtc/javatests/src/org/webrtc/PeerConnectionTest.java
similarity index 94%
rename from talk/app/webrtc/java/testcommon/src/org/webrtc/PeerConnectionTest.java
rename to talk/app/webrtc/javatests/src/org/webrtc/PeerConnectionTest.java
index 8d962cc..048d92b 100644
--- a/talk/app/webrtc/java/testcommon/src/org/webrtc/PeerConnectionTest.java
+++ b/talk/app/webrtc/javatests/src/org/webrtc/PeerConnectionTest.java
@@ -27,6 +27,9 @@
 
 package org.webrtc;
 
+import junit.framework.TestCase;
+
+import org.junit.Test;
 import org.webrtc.PeerConnection.IceConnectionState;
 import org.webrtc.PeerConnection.IceGatheringState;
 import org.webrtc.PeerConnection.SignalingState;
@@ -36,6 +39,7 @@
 import java.nio.ByteBuffer;
 import java.nio.charset.Charset;
 import java.util.Arrays;
+import java.util.EnumSet;
 import java.util.IdentityHashMap;
 import java.util.LinkedList;
 import java.util.Map;
@@ -43,18 +47,15 @@
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
 
-import static junit.framework.Assert.*;
-
 /** End-to-end tests for PeerConnection.java. */
-public class PeerConnectionTest {
+public class PeerConnectionTest extends TestCase {
   // Set to true to render video.
   private static final boolean RENDER_TO_GUI = false;
-  private TreeSet<String> threadsBeforeTest = null;
 
   private static class ObserverExpectations implements PeerConnection.Observer,
-                                                       VideoRenderer.Callbacks,
-                                                       DataChannel.Observer,
-                                                       StatsObserver {
+                                            VideoRenderer.Callbacks,
+                                            DataChannel.Observer,
+                                            StatsObserver {
     private final String name;
     private int expectedIceCandidates = 0;
     private int expectedErrors = 0;
@@ -112,6 +113,10 @@
       gotIceCandidates.add(candidate);
     }
 
+    public synchronized void expectError() {
+      ++expectedErrors;
+    }
+
     public synchronized void expectSetSize() {
       if (RENDER_TO_GUI) {
         // When new frames are delivered to the GUI renderer we don't get
@@ -435,7 +440,6 @@
     public int height = -1;
     public int numFramesDelivered = 0;
 
-    @Override
     public void setSize(int width, int height) {
       assertEquals(this.width, -1);
       assertEquals(this.height, -1);
@@ -443,7 +447,6 @@
       this.height = height;
     }
 
-    @Override
     public void renderFrame(VideoRenderer.I420Frame frame) {
       ++numFramesDelivered;
     }
@@ -485,21 +488,40 @@
     return new WeakReference<MediaStream>(lMS);
   }
 
-  // Used for making sure thread handles are not leaked.
-  // Call initializeThreadCheck before a test and finalizeThreadCheck after
-  // a test.
-  void initializeThreadCheck() {
+  private static void assertEquals(
+      SessionDescription lhs, SessionDescription rhs) {
+    assertEquals(lhs.type, rhs.type);
+    assertEquals(lhs.description, rhs.description);
+  }
+
+  @Test
+  public void testCompleteSession() throws Exception {
+    doTest();
+  }
+
+  @Test
+  public void testCompleteSessionOnNonMainThread() throws Exception {
+    final Exception[] exceptionHolder = new Exception[1];
+    Thread nonMainThread = new Thread("PeerConnectionTest-nonMainThread") {
+        @Override public void run() {
+          try {
+            doTest();
+          } catch (Exception e) {
+            exceptionHolder[0] = e;
+          }
+        }
+      };
+    nonMainThread.start();
+    nonMainThread.join();
+    if (exceptionHolder[0] != null)
+      throw exceptionHolder[0];
+  }
+
+  private void doTest() throws Exception {
+    CountDownLatch testDone = new CountDownLatch(1);
     System.gc();  // Encourage any GC-related threads to start up.
-    threadsBeforeTest = allThreads();
-  }
+    TreeSet<String> threadsBeforeTest = allThreads();
 
-  void finalizeThreadCheck() throws Exception {
-    TreeSet<String> threadsAfterTest = allThreads();
-    assertEquals(threadsBeforeTest, threadsAfterTest);
-    Thread.sleep(100);
-  }
-
-  void doTest() throws Exception {
     PeerConnectionFactory factory = new PeerConnectionFactory();
     // Uncomment to get ALL WebRTC tracing and SENSITIVE libjingle logging.
     // NOTE: this _must_ happen while |factory| is alive!
@@ -714,6 +736,10 @@
     videoSource.dispose();
     factory.dispose();
     System.gc();
+
+    TreeSet<String> threadsAfterTest = allThreads();
+    assertEquals(threadsBeforeTest, threadsAfterTest);
+    Thread.sleep(100);
   }
 
   private static void shutdownPC(
@@ -756,4 +782,16 @@
     }
     return threads;
   }
+
+  // Return a String form of |strings| joined by |separator|.
+  private static String joinStrings(String separator, TreeSet<String> strings) {
+    StringBuilder builder = new StringBuilder();
+    for (String s : strings) {
+      if (builder.length() > 0) {
+        builder.append(separator);
+      }
+      builder.append(s);
+    }
+    return builder.toString();
+  }
 }
diff --git a/talk/app/webrtc/javatests/src/org/webrtc/PeerConnectionTestJava.java b/talk/app/webrtc/javatests/src/org/webrtc/PeerConnectionTestJava.java
deleted file mode 100644
index 2f0419c..0000000
--- a/talk/app/webrtc/javatests/src/org/webrtc/PeerConnectionTestJava.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * libjingle
- * Copyright 2014, Google Inc.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- *  1. Redistributions of source code must retain the above copyright notice,
- *     this list of conditions and the following disclaimer.
- *  2. Redistributions in binary form must reproduce the above copyright notice,
- *     this list of conditions and the following disclaimer in the documentation
- *     and/or other materials provided with the distribution.
- *  3. The name of the author may not be used to endorse or promote products
- *     derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-package org.webrtc;
-
-
-import junit.framework.TestCase;
-
-/** End-to-end tests for PeerConnection.java. */
-public class PeerConnectionTestJava extends TestCase {
-  private PeerConnectionTest test = new PeerConnectionTest();
-  @Test
-  public void testCompleteSession() throws Exception {
-    test.initializeThreadCheck();
-    test.doTest();
-    test.finalizeThreadCheck();
-  }
-
-  @Test
-  public void testCompleteSessionOnNonMainThread() throws Exception {
-    final Exception[] exceptionHolder = new Exception[1];
-    Thread nonMainThread = new Thread("PeerConnectionTest-nonMainThread") {
-        @Override public void run() {
-          try {
-            test.initializeThreadCheck();
-            test.doTest();
-            test.finalizeThreadCheck();
-          } catch (Exception e) {
-            exceptionHolder[0] = e;
-          }
-        }
-      };
-    nonMainThread.start();
-    nonMainThread.join();
-    if (exceptionHolder[0] != null)
-      throw exceptionHolder[0];
-  }
-}
\ No newline at end of file
diff --git a/talk/libjingle_tests.gyp b/talk/libjingle_tests.gyp
index d853236..128203b 100755
--- a/talk/libjingle_tests.gyp
+++ b/talk/libjingle_tests.gyp
@@ -263,8 +263,7 @@
               'variables': {
                 'java_src_dir': 'app/webrtc/javatests/src',
                 'java_files': [
-                  'app/webrtc/java/testcommon/src/org/webrtc/PeerConnectionTest.java',
-                  'app/webrtc/javatests/src/org/webrtc/PeerConnectionTestJava.java',
+                  'app/webrtc/javatests/src/org/webrtc/PeerConnectionTest.java',
                 ],
               },
               'action_name': 'create_jar',
@@ -314,61 +313,6 @@
         },
       ],
     }],
-    ['OS=="android"', {
-      'targets': [
-        {
-          'target_name': 'libjingle_peerconnection_android_unittest',
-          'type': 'none',
-          'dependencies': [
-            'libjingle.gyp:libjingle_peerconnection_jar',
-          ],
-          'actions': [
-            {
-              # TODO(perkj): convert from a custom script to a standard gyp
-              # apk build once chromium's apk-building gyp machinery can be used
-              # (http://crbug.com/225101)
-              'action_name': 'build_peerconnection_unittests_apk',
-              'inputs' : [
-                '<(PRODUCT_DIR)/libjingle_peerconnection.jar',
-                '<(PRODUCT_DIR)/libjingle_peerconnection_so.so',
-                'app/webrtc/androidtests/AndroidManifest.xml',
-                'app/webrtc/androidtests/ant.properties',
-                'app/webrtc/androidtests/build.xml',
-                'app/webrtc/androidtests/jni/Android.mk',
-                'app/webrtc/androidtests/project.properties',
-                'app/webrtc/androidtests/res/drawable-hdpi/ic_launcher.png',
-                'app/webrtc/androidtests/res/drawable-ldpi/ic_launcher.png',
-                'app/webrtc/androidtests/res/drawable-mdpi/ic_launcher.png',
-                'app/webrtc/androidtests/res/drawable-xhdpi/ic_launcher.png',
-                'app/webrtc/androidtests/res/values/strings.xml',
-                'app/webrtc/androidtests/src/org/webrtc/PeerConnectionAndroidTest.java',
-                'app/webrtc/java/testcommon/src/org/webrtc/PeerConnectionTest.java',
-              ],
-              'outputs': [
-                '<(PRODUCT_DIR)/libjingle_peerconnection_android_unittest.apk',
-              ],
-              'variables': {
-                'ant_log': '../../../<(INTERMEDIATE_DIR)/ant.log', # ../.. to compensate for the cd app/webrtc/androidtests below.
-              },
-              'action': [
-                'bash', '-ec',
-                'rm -fr <(_outputs) app/webrtc/androidtests/{bin,libs} && '
-                'mkdir -p <(INTERMEDIATE_DIR) && ' # Must happen _before_ the cd below
-                'mkdir -p app/webrtc/androidtests/libs/<(android_app_abi) && '
-                'cp <(PRODUCT_DIR)/libjingle_peerconnection.jar app/webrtc/androidtests/libs/ &&'
-                '<(android_strip) -o app/webrtc/androidtests/libs/<(android_app_abi)/libjingle_peerconnection_so.so  <(PRODUCT_DIR)/libjingle_peerconnection_so.so &&'
-                'cd app/webrtc/androidtests && '
-                '{ ANDROID_SDK_ROOT=<(android_sdk_root) '
-                'ant debug > <(ant_log) 2>&1 || '
-                '  { cat <(ant_log) ; exit 1; } } && '
-                'cd - > /dev/null && '
-                'cp app/webrtc/androidtests/bin/libjingle_peerconnection_android_unittest-debug.apk <(_outputs)'
-              ],
-            },
-          ],
-        },  # target AppRTCDemo
-      ],  # targets
-    }],  # OS=="android"
     ['OS=="ios" or (OS=="mac" and target_arch!="ia32" and mac_sdk>="10.7")', {
       # The >=10.7 above is required to make ARC link cleanly (e.g. as
       # opposed to _compile_ cleanly, which the library under test