Разрешение не удалось исключение в призме Xamarin IOS - PullRequest
0 голосов
/ 05 апреля 2019

У меня есть приложение для iOS, написанное на Xamarin, и я получаю исключение Unified Exceptions Resolution Failed, когда пытаюсь запустить приложение в iOS.Однако эта ошибка не возникает, когда я запускаю версию приложения для Android.Исключение выдается во время выполнения функции инициализации из призмы.

Вот фрагмент из моего приложения. Xaml.cs

protected override void RegisterTypes(IContainerRegistry containerRegistry)
    {
        this.RegisterLocal(containerRegistry);
        this.RegisterServices(containerRegistry);  
        this.RegisterPagesForNavigation(containerRegistry);
    }

Этот код выполняется и проходит.

Это инициализация iOS

Register("AppDelegate")]
public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate
{
    public override bool FinishedLaunching(UIApplication app, NSDictionary options)
    {

        global::Xamarin.Forms.Forms.Init();

        PullToRefreshLayoutRenderer.Init();

        LoadApplication(new App(new IosInitializer()));

        return base.FinishedLaunching(app, options);
    }

    public class IosInitializer : IPlatformInitializer
    {
        public void RegisterTypes(IContainerRegistry containerRegistry)
        {
            containerRegistry.Register<IUAirshipUpdate, UAirshipUpdate>();
        }
    }

Этот код также выполняет

Выдаемое исключение является исключением аргумента null, указывающим, что IModuleCatelog отсутствует.Я не понимаю, почему он ищет этот модуль и не может его найти.Исходный код на GitHub указывает, что класс был зарегистрирован.

1 Ответ

1 голос
/ 08 апреля 2019

Эта проблема была вызвана тем, что поведение компоновщика для приложения IOS было установлено на полное, и это вызывает проблемы с контейнером Unity IOC.

...