Как разрешить проверку приложения "Приложение ссылается на непубличные селекторы в Payload/MyApp.app/MyApp: _setAlwaysRunsAtForegroundPriority:"?

Всего несколько дней назад я успешно загрузил приложение Ionic в Apple Store, и в этот день я получаю предупреждение о проверке:

Приложение ссылается на непубличные селекторы в Payload/something.app/кое-что: _setAlwaysRunsAtForegroundPriority:

Хотя я не смог решить, я смог загрузить приложение в App Store.

Кто-нибудь знает, где это задокументировано или есть какие-либо идеи о том, как решить?

Благодарю.

Ответ 1

Продолжая @Véger Lóránd ответ:

Ошибка была повторно введена в версии 4.1.1. Установка последней версии приведет к отклонению вашего приложения. Решением на данный момент является:

cordova plugin rm cordova-plugin-ionic-webview
cordova plugin add [email protected]

Ответ 2

У меня похожая проблема:

ITMS-90338: непубличное использование API. Приложение ссылается на непубличные селекторы в MyAppName: _setAlwaysRunsAtForegroundPriority :.

И проблема была вызвана следующим плагином: cordova-plugin-ionic-webview

Для решения проблемы обновите до последней версии с помощью следующих команд:

cordova plugin rm cordova-plugin-ionic-webview
cordova plugin add [email protected]

Вы можете прочитать больше об этом здесь: https://github.com/ionic-team/cordova-plugin-ionic-webview/issues/209

Ответ 3

это только предупреждение о безопасности, вызванное просмотром в Интернете. ты можешь игнорировать

Ответ 4

Это сработало

Проблема связана с веб-просмотром.

cordova plugin rm cordova-plugin-ionic-webview
cordova plugin add [email protected]

Ответ 5

Спасибо, но это нельзя игнорировать. Двоичный файл будет отклонен при загрузке в App Store.

Ответ 6

Теперь это похоже на мое приложение на iOS 12.2.

*** Завершение работы приложения из-за необработанного исключения "NSUnknownKeyException", причина: "[setValue: forUndefinedKey:]: этот класс не соответствует значению ключа, соответствующему кодированию для ключа _alwaysRunsAtForegroundPriority. '

Есть идеи, как это исправить?

Ответ 7

отклонено в Appstore сейчас. 3 июля 2019 года. Сообщение:

We identified one or more issues with a recent delivery for your app, "appname. Please correct the following issues, then upload again. ITMS-90338: Non-public API usage - The app references non-public selectors in Sonnenbraeu: _setAlwaysRunsAtForegroundPriority:. If method names in your source code match the private Apple APIs listed above, altering your method names will help prevent this app from being flagged in future submissions. In addition, note that one or more of the above...

Я удалил полную строку _setAlwaysRunsAtForegroundPriority: как описано выше из кода. Также ссылки на это. И да, приложение было выпущено. НО я точно не знаю последствия удаления свойства, которое устанавливает в браузере приоритетный режим. Я не думаю, что это хорошее решение, это просто временный обходной путь, который нужно выпустить.

Ответ 8

То же самое предупреждение для меня в приложении Ionic 3, это предупреждение начало появляться после того, как мне пришлось использовать событие platform.resume :(

Я надеюсь, что это не повлияет на окончательную проверку заявки

С уважением

Ответ 9

У меня сложилось впечатление, что это предупреждение связано с тем, что вы используете частный API, который может выкинуть вас из App Store. С https://developer.apple.com/app-store/review/guidelines/:

2.5.1 Приложения могут использовать только общедоступные API и должны работать на текущей поставляемой ОС.

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