Я использую библиотеки поддержки MvvmCross и Xamarin в своем проекте и после обновления MvvmCross с версий 4.2.0 до 4.4.0 и пакетов поддержки Xamarin с версии 23.3.0 до 25.1.1 , Я не могу выполнить проект. Приложение всегда сбой в SplashScreen с ошибкой: конструктор по умолчанию не найден для типа MvvmCross.Platform.IoC.MvxPropertyInjector. Ошибка возникает в режиме отладки и режиме деблокирования.Конструктор по умолчанию не найден для типа MvxPropertyInjector
Мои SplashScreen:
[Activity(Icon = "@drawable/ic_launcher",
Theme = "@style/InflorTheme.Splash",
NoHistory = true,
MainLauncher = true,
ScreenOrientation = ScreenOrientation.Portrait)]
public class SplashScreen : MvxSplashScreenActivity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
}
}
У меня такая же проблема прямо сейчас, произошла после обновления java и android api. Для начала нет файла LinkerPleaseInclude.cs (не добавлялся при добавлении mvvmcross), добавление этого кода вручную не кажется ничем (это было решением для той же проблемы, 2 года назад). [this] (http://stackoverflow.com/questions/23581846/xamarin-linker-default-constructor-not-found-for-type-cirrious-crosscore-ioc-m/). Я знаю, что проблема связана с компоновкой сборок, но даже если я установил, что ни одна проблема не остается. – SilentStorm
Из [changelog] (https://developer.android.com/about/versions/nougat/android-7.0-changes.html): «Начиная с Android 7.0 система запрещает приложениям динамически связываться с библиотеками, отличными от NDK, что может привести к сбою вашего приложения. Это изменение в поведении направлено на создание совместимого приложения с использованием обновлений платформы и разных устройств. Несмотря на то, что ваш код может не связываться с частными библиотеками, возможно, что сторонняя статическая библиотека в вашем приложении может быть так ». Есть что-то в этом роде? – SilentStorm
Это код C#, связанный с компоновщиком _mono_. – Cheesebaron