onnxruntime/java/src/test/android
Edward Chen c46c7ccba5
Update Gradle version (#14862)
- Update Gradle version used in most places from 6.8.3 to 8.0.1. Update Android Gradle Plugin version where applicable.
  Not updated in this change: React Native Android projects (under `js/react_native/`). That can be done later along with updating the React Native projects.

- Add Gradle wrapper in `java/` to make it easier to consistently use a specific Gradle version.
2023-03-08 12:22:06 -08:00
..
app Update Gradle version (#14862) 2023-03-08 12:22:06 -08:00
.gitignore Add App Center e2e test to Android package (#9653) 2021-11-03 22:56:46 -07:00
build.gradle Update Gradle version (#14862) 2023-03-08 12:22:06 -08:00
gradle.properties Update Gradle version (#14862) 2023-03-08 12:22:06 -08:00
README.md Update Gradle version (#14862) 2023-03-08 12:22:06 -08:00
settings.gradle Add android test app to validate Java API for ORT-Mobile Android (#7477) 2021-05-04 15:39:14 -07:00

Android Test Application for ORT-Mobile

This directory contains a simple android application for testing ONNX Runtime AAR package.

Background

For general usage and build purpose of ORT-Mobile Android, please see the documentation here.

Test Android Application Overview

This android application is mainly aimed for testing:

  • Model used: A simple sigmoid ONNX model (converted to ORT format under app\src\androidTest\assets folder).
    • Here's documentation about how you can convert an ONNX model into ORT format.
    • Run python -m onnxruntime.tools.convert_onnx_models_to_ort --optimization_style=Fixed /path/to/model.onnx and rename the resulting .ort file accordingly.
  • Main test file: An android instrumentation test under app\src\androidtest\java\ai.onnxruntime.example.javavalidator\SimpleTest.kt
  • The main dependency of this application is onnxruntime aar package under app\libs.
  • The MainActivity of this application is set to be empty.

Requirements

  • JDK version 11 or later is required.
  • The Gradle build system is required for building the APKs used to run android instrumentation tests. Version 7.5 or newer is required. The Gradle wrapper at java/gradlew[.bat] may be used.

Building

Use the android's build instructions with --build_java and --android_run_emulator option.

Please note that you may need to set the --android_abi=x86_64 (the default option is arm64-v8a). This is because android instrumentation test is run on an android emulator which requires an abi of x86_64.

Build Output

The build will generate two apks which is required to run the test application in $YOUR_BUILD_DIR/java/androidtest/android/app/build/outputs/apk:

  • androidtest/debug/app-debug-androidtest.apk
  • debug/app-debug.apk

After running the build script, the two apks will be installed on ort_android emulator and it will automatically run the test application in an adb shell.