onnxruntime/java/src/test/android
Edward Chen 981893c318
Remove deprecated "mobile" packages (#20941)
# Description

This PR removes the building of the ORT "mobile" packages and much of the associated infrastructure which is no longer needed.

Not removed yet - tools/ci_build/github/android/mobile_package.required_operators.config and the helper scripts that depend on it.

# Motivation and Context

The mobile packages were deprecated in 1.18. Users should use the full packages (Android - onnxruntime-android, iOS - onnxruntime-c/onnxruntime-objc) instead or do a custom build.
2024-06-07 16:20:32 -05:00
..
app Remove deprecated "mobile" packages (#20941) 2024-06-07 16:20:32 -05:00
.gitignore
build.gradle
gradle.properties
README.md
settings.gradle

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.