Stop statically including legacy-android-test
Statically including legacy-android-test leads to duplicate classes
which causes build time problems (with Proguard) and runtime problems on
older SDK versions. This change:
* Stops statically including legacy-android-test.
* Adds compile time dependencies on andoid.test.base, android.test.mock
and android.test.runner where necessary.
* Adds <uses-library android:name="android.test.runner"/> to any
affected package to ensure that the classes that were included by
legacy-android-test are still available at runtime. That also adds a
dependency on android.test.base and android.test.mock.
The following change descriptions were generated automatically and so
may be a little repetitive. They are provided to give the reviewer
enough information to check the comments match what has actually been
changed and check the reasoning behind the changes.
* service/Android.mk
Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
because statically including the classes in CarService results in
duplicate classes which leads to build time and compile time
issues.
* service/AndroidManifest.xml
Add uses-library for android.test.runner because otherwise this
change would change the set of files available to CarService at
runtime.
* tests/CarDiagnosticVerifier/Android.mk
Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
because statically including the classes in CarDiagnosticVerifier
results in duplicate classes which leads to build time and compile
time issues.
* tests/CarDiagnosticVerifier/AndroidManifest.xml
Add uses-library for android.test.runner because otherwise this
change would change the set of files available to
CarDiagnosticVerifier at runtime.
* tests/EmbeddedKitchenSinkApp/Android.mk
Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
because statically including the classes in EmbeddedKitchenSinkApp
results in duplicate classes which leads to build time and compile
time issues. It is also unnecessary as EmbeddedKitchenSinkApp
targets SDK version 25 which provides all the classes at runtime.
* tests/EmbeddedKitchenSinkApp/AndroidManifest.xml
Add uses-library for android.test.runner because otherwise this
change would change the set of files available to
EmbeddedKitchenSinkApp at runtime.
* tests/android_car_api_test/Android.mk
Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
because statically including the classes in AndroidCarApiTest
results in duplicate classes which leads to build time and compile
time issues.
Added 'android.test.base' to LOCAL_JAVA_LIBRARIES because
AndroidCarApiTest's source depends on its classes and because of
these changes they are no longer present on the compilation path.
* tests/android_support_car_api_test/Android.mk
Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
because statically including the classes in
AndroidSupportCarApiTest results in duplicate classes which leads
to build time and compile time issues. It is also unnecessary as
AndroidSupportCarApiTest targets SDK version 23 which provides all
the classes at runtime.
Added 'android.test.base' to LOCAL_JAVA_LIBRARIES because
AndroidSupportCarApiTest's source depends on its classes and
because of these changes they are no longer present on the
compilation path.
* tests/carservice_test/Android.mk
Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
because statically including the classes in CarServiceTest results
in duplicate classes which leads to build time and compile time
issues.
Added 'android.test.base' to LOCAL_JAVA_LIBRARIES because
CarServiceTest's source depends on its classes and because of these
changes they are no longer present on the compilation path.
* tests/carservice_unit_test/Android.mk
Added 'android.test.base' to LOCAL_JAVA_LIBRARIES because
CarServiceUnitTest's source depends on its classes and because of
these changes they are no longer present on the compilation path.
Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
because statically including the classes in CarServiceUnitTest
results in duplicate classes which leads to build time and compile
time issues.
* tests/obd2_app/Android.mk
Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
because statically including the classes in Obd2App results in
duplicate classes which leads to build time and compile time
issues.
* tests/obd2_app/AndroidManifest.xml
Add uses-library for android.test.runner because otherwise this
change would change the set of files available to Obd2App at
runtime.
* tests/usb/AoapHostApp/Android.mk
Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
because statically including the classes in AoapHostApp results in
duplicate classes which leads to build time and compile time
issues.
* tests/usb/AoapHostApp/AndroidManifest.xml
Add uses-library for android.test.runner because otherwise this
change would change the set of files available to AoapHostApp at
runtime.
Bug: 30188076
Test: make checkbuild
Change-Id: I97bfbbfe7587e9e4ba6df2102e96e9ed3868cb90
14 files changed