Руководящий принцип 2.5.1 - Производительность - Требования к программному обеспечению

Ваше приложение использует частную схему URL-адресов prefs: root =. Использование закрытых API запрещено в App Store, так как это может привести к ухудшению взаимодействия с пользователем в случае изменения этих API. Конкретно:

OS_dispatch_group, _UIRotatingAlertController, WKActionSheet

Следующие шаги

Чтобы решить эту проблему, отредактируйте свое приложение, чтобы обеспечить связанные функции с использованием общедоступных API-интерфейсов, или удалите эти функции с помощью схемы URL-адресов «prefs: root» или «App-Prefs: root».

Blockquote

Я решил два из них, которые я смог узнать в своем коде, это «prefs: root» и «OS_dispatch_group», но другие два не обнаруживаются в коде. здесь я использую команду grep -R '_UIRotatingAlertController' *. Пожалуйста, предложите, если необходимо, запустить какие-либо другие команды для инструмента nm или otool.

-4
Firozzz 28 Июн 2017 в 17:24
1
Вы используете сторонние библиотеки? Оставшиеся два частных API могут использоваться используемыми вами фреймворками.
 – 
Dávid Pásztor
28 Июн 2017 в 17:59
Да, я использую уставшие партийные библиотеки, но как я могу определить этот непубличный API, в какой библиотеке или фреймворке
 – 
Firozzz
29 Июн 2017 в 08:01
Вы можете проверить общедоступные интерфейсы этих фреймворков. Но вам также следует изучить, были ли у других людей эти проблемы с используемыми вами фреймворками, этот метод может оказаться проще, чем самостоятельно искать частное использование API.
 – 
Dávid Pásztor
29 Июн 2017 в 11:25

1 ответ

Лучший ответ

Цитата Оба эти селектора присутствуют в методе [JSQMessagesViewController initialize] -> JSQInstallWorkaroundForSheetPresentationIssue26295020 () и напрямую запутывают их использование, чтобы избежать статического обнаружения (https://github.com/jessesquires/JSQMessagesViewController/blob/f52e83bdb4d5c19ecfd5b6e54cdb9f2efa66cfcf/JSQMessagesViewController/Controllers/JSQMessagesViewController.m). Было бы целесообразно полностью удалить библиотеку перед повторной отправкой на проверку.

Это ответ от Apple, поскольку этот API используется с некоторой уловкой, поэтому я не могу наблюдать за проблемой, но Apple легко наблюдает с помощью своих инструментов.

1
Firozzz 5 Июл 2017 в 11:24