Ответ 1
Вам нужно добавить этот конструктор в свой класс, чтобы он работал:
public AcraApp (IntPtr javaReference, JniHandleOwnership transfer)
: base(javaReference, transfer)
{
}
Я пытаюсь создать дочерний класс "Android.App.Application", чтобы переопределить "OnCreate()", но я не могу заставить его работать. Здесь мой код:
namespace MonoAndroidAcra {
[Application(Debuggable=true,
Label="insert label here",
ManageSpaceActivity = typeof(MainActivity))]
class AcraApp : Application {
public override void OnCreate() {
base.OnCreate();
}
}
}
MainActivity
- это только пример активности по умолчанию.
Теперь, когда я отлаживаю проект, я получаю a System.NotSupportedException
:
Невозможно активировать экземпляр типа MonoAndroidAcra.AcraApp из встроенного дескриптора 405191a0
Для этого исключения не существует стека вызовов.
Как это сделать правильно? Я не мог найти примеров для этого.
Я использую последнюю стабильную версию Mono для Android.
Вам нужно добавить этот конструктор в свой класс, чтобы он работал:
public AcraApp (IntPtr javaReference, JniHandleOwnership transfer)
: base(javaReference, transfer)
{
}
Это была "нечеткая абстракция", поясняемая членом команды Xamarin, которые были исправлены в последней версии Xamarin Android версии 4.12.2, в которой она не требуется больше добавлять этот отсутствующий конструктор. Android SDK 22.6 также необходим для правильной работы с этой версией Xamarin. Однако обновление SDK только не устранит эту проблему, это действительно связано с Xamarin.
Для тех, кто использует более старую версию, Greg solution все равно будет использоваться.