iOS приложение отклонены - частная символ Маха инициализации рутины
Недавно обновление одного из наших приложений было отклонено, поскольку мы, возможно, используем частные API. забавная вещь: приложение состоит только из простого uiwebview, который загружает приложение sencha touch javascript (local), и обновление только изменило некоторые javascript, без собственного кода вообще.
По запросу apple раскрыла, что это приложение, возможно, использует следующие частные условные обозначения:
- __восстановить_dwarf2_зарегистрировать_разделы
- _cthread_init_routine
- mach_init_routine
Поскольку единственный "рукописный" код этого приложения составляет ~5 строк (получить html-код и baseurl + передать его в uiwebview), мы понятия не имеем, откуда это происходит.
Любая помощь / подсказки будут очень признательны.
Обновление: вовсе не вина Apple - это было приложение sencha jsbuilder mac, которое было случайно добавлено в проекты ресурсы
1 ответ:
Для меня это выглядит как низкоуровневый процесс управления.
__keymgr_dwarf2_register_sections
может быть как-то связано с отладкой, хотя немного гугля предполагает, что это может быть связано с обработкой исключений.Я бы предположил, что ваши старые и новые версии отличаются некоторыми деталями компиляции: проверьте конфигурацию сборки и флаги компилятора, а также версии компилятора и glibc тщательно, с особым упором на отладку и обработку исключений.
Можно попробовать скомпилировать исходный код в старая версия с вашей текущей настройкой, а затем с помощью
strings | grep
, чтобы увидеть, содержит ли он какой-либо из оскорбительных символов. Если это так, то это дымящийся пистолет, указывающий на изменение в процессе сборки.