Использование инфраструктуры Objective C, которая находится внутри инфраструктуры Swift, в проекте Xamarin iOS - PullRequest
1 голос
/ 25 мая 2019
  • У меня есть Objective C. (Эта структура работает должным образом с проектом Swift)
  • Тогда у меня есть фреймворк Swift. Эта структура использовала ранее упомянутую структуру Objective C. (Эта среда Swift также работает в проекте Swift)
  • Теперь я пытаюсь использовать эту среду Swift в проекте Xamarin для iOS.
  • Я создал проект Binding Library в моем проекте Xamarin для iOS и в соответствии с Native Reference я добавил как эти файлы Swift Framework, так и толстые файлы Objective C.
  • Я также обновил файл ApiDefinition.

Но когда я запускаю приложение, оно запускается в телефоне и завершается без каких-либо ошибок. Я рад, если приложение упало с ошибкой. Но это не так, и я сейчас ничего не понимаю. Есть мысли?

Ниже показано, как я пытаюсь получить доступ к методам этих структур внутри моего проекта Xamarin для iOS

using BindingSwift;
// More codes here

        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            var myClass = new AroshaMathPerformer();
            var result = myClass.DoTheMath;
            Console.WriteLine("# Result = " + result);
        }

Но, если я добавлю точку останова, она даже не достигнет времени выполнения до выхода из приложения.

Ответы [ 2 ]

0 голосов
/ 06 июня 2019

В таком случае вы можете найти реальную причину, перейдя на

Настройки -> Конфиденциальность -> Аналитика -> Данные аналитики -> И найти журнал файл с вашим идентификатором пакета и датой / временем произошедшего сбоя.

Показанная мне ошибка была связана с @ rpath / , но на самом деле она была устранена после подписания пакета с действительным профилем обеспечения.

Для тех, кому интересно, вы можете посетить здесь , чтобы узнать мой опыт реализации всего этого сценария, упомянутого в заголовке.

0 голосов
/ 26 мая 2019

Предполагая, что все, что вы сделали, находится в вопросе, то ожидается, что оно не будет работать.Библиотеки Swift официально не поддерживаются в Xamarin.iOS.Некоторые люди заставили их работать с этими шагами: https://medium.com/@Flash3001/binding-swift-libraries-xamarin-ios-ff32adbc7c76

...