mirror of https://github.com/grpc/grpc-java.git
Bumps target SDK version of grpc-android, grpc-cronet, grpc-android-interop-testing to API 29. Major related changes are: - Migrated android.support to androidx, which is required for Android Q. - android.net.NetworkInfo is deprecated in SDK 29, suppressed compiler warnings as it is needed for supporting old Android versions. - Robolectric requires Java 9+ for Android 29, which causes unit tests in grpc-cronet fail. Added annotation to emulate Android 28 for grpc-cronet's test. - Upgraded Android dependencies accordingly in android-interop-testing. |
||
|---|---|---|
| .. | ||
| 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