The InstrumentationTestRunner would previously write code coverage data to the sdcard. With the recent SDCARD_WRITE permission addition, generating code coverage would fail if test app did not declare the SDCARD_WRITE permission. This CL changes InstrumentationTestRunner so by default, the coverage data is saved to the app's private data folder. At the test run conclusion it outputs the path to this file so runtest or another test harness find the path to the coverage file.
annotated with SideEffect if the host is running in single test mode.
Also adding some cleanup mechanism and some logcat logging about memory consumption
Original author: ursg
Merged from: //branches/cupcake/...
Automated import of CL 146743