¿Cómo registrar mi propia subclase de aplicación en Xamarin.Android?

yo tengo

public class MyApp : Application 

En Java añadiría una línea al manifiesto y le pasaría el espacio de nombres y el nombre de mi aplicación:

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

En Xamarin, existe el atributo [Application] pero la documentación indica que el miembro Name no es compatible . Entonces, ¿cómo puedo registrar mi subclase? ¿Dónde aplicar el atributo?

Si agrego el atributo a mi subclase, obtengo:

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

Lo encontré. La documentación está obsoleta. Necesitará un c'tor especial con dos parámetros y tendrá que agregar el atributo [Application] :

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

EDIT: Además, parece que uno tiene que anular OnCreate (). Si sólo tiene el constructor, no se llamará.

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

EDIT Noviembre 2015: aquí hay un enlace a la documentación de Xamarin que explica por qué este comportamiento existe .

… Xamarin.Android engancha a esto agregando un mono.MonoRuntimeProvider ContentProvider a AndroidManifest.xml durante el proceso de la estructura. El método mono.MonoRuntimeProvider.attachInfo () es responsable de cargar el tiempo de ejecución Mono en el proceso. Cualquier intento de usar Mono antes de este punto fallará. (Nota: Es por esto que los tipos de la subclase Android.App.Application necesitan proporcionar un constructor (IntPtr, JniHandleOwnership), ya que se crea la instancia de la aplicación antes de que se pueda inicializar Mono).

  • Interfaz de JavaScript de Monodroid
  • Xamarin.Forms MasterDetailPage con TabbedView - Tab Título que aparece al navegar a través del menú de hamburguesas
  • Convertir una aplicación de control de motor de Delphi 5 en Android - necesita asesoramiento sobre el enfoque
  • Administrador de SDK de Visual Studio 2013 Android no funciona
  • Simulaciones de desarrollo de Android de MonoDroid
  • Vídeo final de devolución de videoView
  • Mono.Data.Sqlite.SqliteConnection.SetConfig lanza una biblioteca utilizada incorrectamente excepción
  • ObjectAnimator Proxy para animar TopMargin no puede encontrar setting / getter
  • ¿Se ejecutará una aplicación con armeabi sólo en dispositivos armeabi-v7a?
  • Formularios de Xamarin Android Aplicación no obtener DeviceToken Parse SDK
  • Targeting / Developing para múltiples plataformas móviles con un solo lenguaje de programación (C #)? ¿Coste-beneficio?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.