mirror of https://github.com/grpc/grpc-java.git
This change can have large impact from two aspects: 1. It calls out a _large_ impact on the _few_ Java 7 users. 2. It may have _small_ impact on the _many_ Android users. https://github.com/grpc/grpc-java/issues/4671 tracks gRPC's removal of Java 7 support. We are quite eager to drop Java 7 support as that would allow using new language features like default methods. Guava is also dropping Java 7 support and starting in 30.1 it will warn when used on Java 7. The purpose of the warning is to help discover users that are negatively impacted by dropping Java 7 before it becomes a bigger problem. The Guava logging check was implemented in such a way that there is an optional class that uses Java 8 bytecode. While the class is optional at runtime, the Android build system notices when dexing and fails if Java 8 language featutres are not enabled. We believe this will not be a problem for most Android users, but they may need to add to their build: ``` android { compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } } ``` See also https://github.com/google/guava/releases/tag/v30.1 |
||
|---|---|---|
| .. | ||
| src | ||
| README.md | ||
| build.gradle | ||
| proguard-rules.pro | ||
| start-emulator.sh | ||
| wait-for-emulator.sh | ||
README.md
gRPC Android test App
Implements gRPC integration tests in an Android App.
In order to build this app, you need a local.properties file under this directory which specifies the location of your android sdk:
sdk.dir=/somepath/somepath/sdk
Connect your Android device or start the emulator:
$ ./start-emulator.sh <AVD name> & ./wait-for-emulator.sh
Start test server
Start the test server by:
$ ../run-test-server.sh
Manually test
Install the App by:
$ ../gradlew installDebug
Then manually test it with the UI.
Instrumentation tests
Instrumentation tests must be run on a connected device or emulator. Run with the following gradle command:
$ ../gradlew connectedAndroidTest \
-Pandroid.testInstrumentationRunnerArguments.server_host=10.0.2.2 \
-Pandroid.testInstrumentationRunnerArguments.server_port=8080 \
-Pandroid.testInstrumentationRunnerArguments.use_tls=true \
-Pandroid.testInstrumentationRunnerArguments.server_host_override=foo.test.google.fr \
-Pandroid.testInstrumentationRunnerArguments.use_test_ca=true \
-Pandroid.testInstrumentationRunnerArguments.test_case=all