onnxruntime/csharp/test/Microsoft.ML.OnnxRuntime.Tests.Droid/ReadMe.md
Scott McKay 5fc60f36f2
Update to the net8 MAUI targets. Remove Xamarin. (#21062)
### Description
<!-- Describe your changes. -->
Xamarin is EOL so remove support.
The MAUI targets are EOL and need updating.
https://dotnet.microsoft.com/en-us/platform/support/policy/maui

Other cleanups:
- netcoreapp3.1 is EOL
- the net6 macos target was added in the mistaken belief that was for
MAUI mac support, but that is actually via the mac-catalyst target which
we recently added support for.
- some CIs that were using the old build setup of splitting pre-net6
targets. The ORT C# bindings csproj was updated last year and the
`PreNet6` and `SelectedTargets` properties no longer exist as they were
replaced by the simpler `IncludeMobileTargets` property.

### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->
Remove EOL components.
#21058
2024-06-19 16:20:58 +10:00

1,018 B

To test you need the libonnxruntime.so for the various Android architectures.

The test project looks for these in '......\build\Android<architecture>\Release\libonnxruntime.so'. e.g. '......\build\Android\arm64-v8a\Release\libonnxruntime.so'

'......' is the root directory of the repository.

Build onnxruntime for the required architecture if you're testing changes in the native code.

Alternatively, if you're testing the C# code you can extract the AAR from the nightly nuget Microsoft.ML.OnnxRuntime package.

  • Get the nupkg from https://aiinfra.visualstudio.com/PublicPackages/_artifacts/feed/ORT-Nightly
  • Unzip it, and the AAR is in runtimes/android/native/onnxruntime.aar.
  • Unzip the AAR. The jni directory contains a directory for each architecture with the libonnxruntime.so.
  • Copy the libonnxruntime.so for the required architectures to /build/Android//Release.
    • e.g. x86_64 for running the emulator on an amd64 machine, and arm64-v8a for running on an arm64 Android device