Приложение iOS отклонено - Руководство 2.3.1 - Производительность
Я только недавно отправил свое приложение в магазин приложений. Но магазин приложений отклонил мое приложение и сказал
Мы обнаружили, что ваше приложение содержит запутанный код, искажение селектора или функции, предназначенные для подрыва процесса проверки приложения, путем изменения этой концепции приложения после утверждения в App Store. Для следующей отправки этого приложения может потребоваться больше времени для проверки, и это приложение не будет иметь право на ускоренную проверку, пока эта проблема не будет решена.
Мы не добавили ни одной новой сторонней библиотеки с момента последней отправки. В нашем приложении с прошлых 1,5 года мы используем реактивную и firebase, это может быть причиной отклонения приложения.
Ответы
Ответ 1
Apple строго следует своим рекомендациям по обзору AppStore и в любом случае хочет пойти на компромисс. Есть очень-очень-очень редкие шансы, что Apple пойдет на компромисс по этому поводу.
Из этого Руководства
Apple хочет сказать, что функция/функция/поведение приложения должны быть одинаковыми в процессе до и после проверки. Приложение не должно изменять свои функции/функции после обзора процесса.
Apple считает, что после одобрения приложения функция/функция/поведение вашего приложения может измениться. И именно по этой причине Apple попросила больше времени для обзора.
Это можно сделать, просто установив логическую переменную на основе ответа API, ИЛИ установив таймер в приложении и т.д. Если вы это сделаете, то ваше приложение никогда не будет одобрено.
Что вы можете сделать сейчас?
Вы всегда можете связаться с рецензентом приложения и поспорить с ними о вашем приложении, и они подробно объяснят, что не так с приложением.
Таким образом, вы можете исправить и повторно отправить приложение снова.
Ответ 2
Определенно некоторые сторонние библиотеки используют обфускацию.
Попросите команду рецензирования App Store предоставить более подробную информацию о том, какой код приложения скрыт. Они предоставят что-то вроде этого: "Специальные методы заметки с шифрованием имен включают (но не обязательно ограничиваются ими) YVzJpCJy, lUwqjWK, djLkQS, setLUwqjWK и QsQwZw"
Перейдите в отправленный архив Xcode, откройте его в Finder App.xcarchive/Products/Applications/App.app/Frameworks
.
Используйте otool -ov <path_to_framework_binary_inside_framework_bundle>
в терминале. Он будет печатать имена и методы из двоичного файла. Используйте cmd + f для поиска ваших символов, предоставленных Apple Review Team.
Укажите пункт # 3 для всех платформ, чтобы найти, кто использует запутывание. Чтобы сделать его более эффективным, имеет смысл начать с тех, кто потенциально может использовать обфускацию для обеспечения безопасности, например, с поставщиками платежных услуг.
Проверьте обновленную версию библиотеки, которая удалила запутывание - они могут написать это в заметках о выпуске или связаться со службой поддержки, чтобы получить дальнейшие инструкции о том, как использовать их библиотеку в этом случае.