Skip to content

SIDOVSKY/Hyperion-Xamarin.Android

Repository files navigation

Hyperion for Xamarin.Android

Hyperion module pack for Xamarin.Android apps

PLATFORM API NuGet

Hyperion Logo

Installing

Add NuGet package to your Xamarin.Android project

PM> Install-Package Hyperion-Xamarin.Android

Setup and Usage

Once NuGet package is installed, Hyperion is integrated into your app during build. No initialization code needed. It will be started automatically with your app.

Hyperion drawer can be opened from its notification.

By default, Hyperion is included only for Debug configuration. If you want to enable it for other configurations please set $(EnableHyperion) MSBuild property in your .csproj file:

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    ...
    <EnableHyperion>true</EnableHyperion>
  </PropertyGroup>

ATTENTION! If your app uses a custom Application class, please, add these lines to your AndroidManifest.xml file:

<manifest ... >
	<application ...>
		...
		<service android:name="xamarin.mark.for.MonoRuntimeProvider.generation.crash" android:process=":crash" />
		<service android:name="xamarin.mark.for.MonoRuntimeProvider.generation.phoenix" android:process=":phoenix" />
...

This will help Xamarin.Android build tasks to generate and register MonoRuntimeProviders for processes declared in java libraries. Otherwise Hyperion-Crash and Hyperion-Phoenix plugins will crash due to uninitialized mono runtime in their processes.

Included plugins

Xamarin.Android app packaging system cannot merge same-named java service provider configuration files (META-INF\services\) from multiple libraries. That's why special pre-merged configuration files are included via hyperion-known-services-xamarin.aar.

License

This project is licensed under the MIT License. See the LICENSE file for details.