Как зарегистрировать мой собственный подкласс приложения в Xamarin.Android?

у меня есть

public class MyApp : Application 

В Java я бы добавил строку в манифест и передал ей пространство имен и имя моего приложения:

 <application android:icon="@drawable/icon" android:label="@string/app_name" android:name="com.devahead.extendingandroidapplication.MyApplication"> 

В Xamarin есть атрибут [Application] но в документации указано, что элемент Name не поддерживается . Итак, как я могу зарегистрировать свой подкласс? Где применить атрибут?

Если я добавлю атрибут в свой подкласс, я получаю:

 System.NotSupportedException: Unable to activate instance of type TestClient_Android.MyApplication from native handle 14d00019 

Найди его. Документация устарела. Вам понадобится специальный c'tor с двумя параметрами, и вам придется добавить атрибут [Application] :

 [Application] public class MyApplication : Application { public MyApplication(IntPtr handle, JniHandleOwnership ownerShip) : base(handle, ownerShip) { } } 

EDIT: Кроме того, кажется, что нужно переопределить OnCreate (). Если у вас есть только конструктор, он не будет вызван.

 public override void OnCreate() { // If OnCreate is overridden, the overridden c'tor will also be called. base.OnCreate(); } 

EDIT November 2015: вот ссылка на документацию Xamarin, которая объясняет, почему такое поведение существует .

… Xamarin.Android подключается к этому, добавляя mono.MonoRuntimeProvider ContentProvider в AndroidManifest.xml во время процесса сборки. Метод mono.MonoRuntimeProvider.attachInfo () отвечает за загрузку Mono runtime в процесс. Любые попытки использовать Моно до этого момента не удастся. (Примечание. Вот почему типы, для подкласса Android.App.Application необходимо предоставить конструктор (IntPtr, JniHandleOwnership), поскольку экземпляр приложения создается до того, как Mono может быть инициализирован.)

Intereting Posts
Поддерживайте соединение сокетов между действиями на Android Ошибка: Android Dex: не удается найти файл \ android-sdk-path \ platform-tools \ lib \ dx.jar Просмотр видов перемотки в прокрутке Выполнение последовательных вызовов api с помощью Дооснащения и возвращение наблюдаемых Документация Android protobuf nano Показывать сообщения журнала на экране для приложения Android Android 2.2.1 журнал изменений Динамически изменить заголовок файла android.support.v4.view.PagerTitleStrip Избегайте перезагрузки с помощью asynctask при изменении ориентации в android Bluetooth-звонок Gatt не работает с новым API для Lollipop PeekService () возвращает null, даже если служба запущена, если служба перезагружается системой после того, как OOM убьет Android: открыть pdf-файл из моего приложения, используя встроенный просмотрщик PDF-файлов Получить толкаемый идентификатор для определенного значения в firebase android ListFragment и onActivityCreated вызываются дважды Управление заголовками Action Bar при использовании фрагментов и стоп-кадра