Я создаю приложение Xamarin, и до сих пор я смог без проблем собрать его на iPhone Simulator, но я не смог заставить приложение успешно запускаться на физическом устройстве iPhone. В прошлом (около месяца назад) приложение работало нормально на том же устройстве. Вот некоторые сведения об особенностях:
- Я разрабатываю свой код Xamarin на моей машине с Windows, которая связана с удаленным Mac (размещенным на MacStadium, сторонней хостинг-службе).
- Мой тестовый телефон - iPhone 5c под управлением iOS 10.3.3
- Для развертывания на моем iPhone я создаю свое приложение в режиме выпуска в Visual Studio, загружаю код в стороннее приложениеСлужба установки Installr, которая размещает файл IPA и помогает установить мое приложение на физическое устройство. У меня никогда не было проблем с Installr, и у меня нет оснований полагать, что это источник моей проблемы.
- С тех пор, как приложение работало в последний раз на физическом устройстве, я обновил Visual Studio до версии 16.3. 2 и обновленный Xamarin. Вот спецификации Xamarin:
В общем случае, я загружаю и устанавливаю свое приложение на iPhone без каких-либо проблем. Однако, когда я нажимаю на приложение, экран-заставка загружается примерно на 5 секунд, на короткое время появляется белый экран, как показано ниже, а затем приложение вылетает.
Я видел несколько связанных статей о StackOverflow и других источниках в Интернете, но ни одно из предложенных решений не сработало для меня. Например, я безуспешно пытался добавить [assembly: XamlCompilation(XamlCompilationOptions.Compile)]
в App.xaml.cs.
Я также поиграл с изменением настроек файла CSProj для компиляции для различных комбинаций ARM64 и ARMv7. Изменение этого также не помогло. Я попытался изменить поведение компоновщика на «Не связывать» с «Только SDK Link Framework», и я получаю сообщение об ошибке, в котором говорится, что собственный код слишком велик для 32-разрядных архитектур. Я бы собрал только 64-архитектуру, чтобы обойти эту ошибку, но я считаю, что iPhone 5c использует 32-битную архитектуру.
Вот как выглядит файл CSProj моего iOS-проекта в данный момент. Я попытался проверить почти все эти флажки, но безуспешно:
Я в недоумении относительно того, что это может быть. Любые предложения будут ценны. Чтобы еще больше усложнить ситуацию, я не смог получить хороший файл журнала с iPhone. Так как Mac размещен на удаленном компьютере, я не могу подключить свой телефон к XCode, чтобы получать журналы таким образом. У кого-нибудь есть надежное решение для получения файлов журнала другим способом?