onnxruntime/csharp/sample/Xamarin/FasterRcnnSample/FasterRcnnSample.Forms.Android/MainActivity.cs
Scott McKay b5a652c578
Add Xamarin support (#9436)
Add Xamarin support to the ORT nuget packages.
  - Update C# code to support Xamarin builds for iOS and Android
  - refactor some things to split out common code
  - include iOS and Android ORT native shared library in native nuget package
2021-10-27 20:07:07 +10:00

37 lines
1.6 KiB
C#

using Android.App;
using Android.Content.PM;
using Android.Runtime;
using Android.OS;
using Microsoft.ML.OnnxRuntime;
namespace FasterRcnnSample.Forms.Droid
{
[Activity(Label = "FasterRcnnSample.Forms", Icon = "@mipmap/icon", Theme = "@style/MainTheme", MainLauncher = true,
ScreenOrientation = ScreenOrientation.Portrait,
ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode |
ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize)]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
Xamarin.Essentials.Platform.Init(this, savedInstanceState);
global::Xamarin.Forms.Forms.Init(this, savedInstanceState);
SessionOptionsContainer.Register(
nameof(SessionOptionMode.Platform),
(sessionOptions) => sessionOptions.AppendExecutionProvider_Nnapi(NnapiFlags.NNAPI_FLAG_USE_NONE));
LoadApplication(new App());
}
public override void OnRequestPermissionsResult(int requestCode, string[] permissions,
[GeneratedEnum] Permission[] grantResults)
{
Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
}
}
}