#ios #xamarin.forms #app-store
#iOS #xamarin.forms #app-store
Вопрос:
Еще три недели назад мое приложение могло загружать его в App Store без каких-либо проблем. Однако Apple отказалась загружать приложение с новым сообщением об использовании непубличного API.
Приложение разработано с помощью Xamarin в Visual Studio для Mac и обновило все библиотеки и пакеты. Кто-нибудь может мне помочь? Потому что я не могу найти, в чем проблема, и не вижу никакого решения. Это будет что-то новое?
Спасибо всем.
Non-public API usage:
The app references non-public selectors in AppAytoSS.iOS:
addTemporaryAttribute:value:forCharacterRange:,
addTemporaryAttributes:forCharacterRange:, behaviorWithType:,
defaultBaselineOffsetForFont:, defaultLineHeightForFont:, finished,
greekingThreshold, horizontalCornerRadius,
initWithSource:convolutionState:weights:, initWithType:,
postSession:didAddPlayer:, postSession:didReceiveData:fromPlayer:,
postSession:didReceiveMessage:withData:fromPlayer:,
postSession:didRemovePlayer:,
postSession:player:didChangeConnectionState:,
postSession:player:didSaveData:, preferredMetalContext, removeData:,
removeTemporaryAttribute:forCharacterRange:, setGreekingThreshold:,
setHorizontalCornerRadius:, setIsPrimary:, setShouldAntiAlias:, setUUID:,
setVerticalCornerRadius:, shouldAntiAlias,
temporaryAttribute:atCharacterIndex:effectiveRange:,
temporaryAttribute:atCharacterIndex:longestEffectiveRange:inRange:,
temporaryAttributesAtCharacterIndex:effectiveRange:,
temporaryAttributesAtCharacterIndex:longestEffectiveRange:inRange:,
textContainerChangedTextView:, toolTip, usesBackgroundSession,
verticalCornerRadius
Комментарии:
1. То же самое здесь… Вы нашли решение этой проблемы?
Ответ №1:
У нас была (точно) такая же проблема с проектом Xamarin iOS, и мы смогли ее исправить, установив поведение сборки / сборки / компоновщика iOS: только для SDK-файлов Link Framework (прежде чем не связывать) — то, что Джек Хуа линк показывает в качестве решения.
Однако мы не смогли выяснить причину проблемы. Используются два разных MacBook, один с самой последней версией библиотек XCode, Visual Studio и Xamarin, другой с чуть более старыми версиями. Последний смог создать IPA без описанной выше ошибки, обновленная машина не была.
Однако используемые пакеты NugGet одинаковы, поэтому я думаю, что эта проблема не связана с ними.
Комментарии:
1. Похоже, что эта проблема связана с Xamarin, поскольку она возникает только в их последнем обновлении.
Ответ №2:
После устранения внутренней проблемы с командой Xamarin они посоветовали выполнить следующее
добавление —linksdkonly к дополнительным аргументам mtouch на странице настроек сборки iOS
, поскольку кажется, что Visual Studio игнорирует настройки в GUI
Я протестировал его, и теперь моя сборка принята Apple без вышеуказанной ошибки
Это проблема, возникшая в Xamarin https://github.com/xamarin/xamarin-macios/issues/5913
Ответ №3:
Я нахожу поток, в котором люди недавно столкнулись с той же проблемой, что и вы: build-status-has-changed-to-invalid-binary .
Итак, я предполагаю, что некоторые используемые вами пакеты nuget третьей части обновлены и используют эти непубличные селекторы, которые Apple не разрешает.
Я бы посоветовал вам получить код три недели назад и не обновлять какие-либо пакеты nuget третьей части. Затем отправьте еще раз, чтобы проверить, является ли это проблемой.
Вы также можете сравнить свою ссылку со ссылками людей, перечисленных в этой теме, и найти что-то похожее. И какие-либо пакеты nuget, связанные с плеером (поскольку я вижу некоторый селектор плеера в списке непубличных селекторов)?