Мы получили отказ от Apple. Происходит все время, верно? Но на этот раз мы немного в тупике. Старые способы выяснить это не дают ключа к решению.
От Apple:
- 5 ПРОИЗВОДИТЕЛЬНОСТЬ: ТРЕБОВАНИЯ К ПРОГРАММНОМУ ОБЕСПЕЧЕНИЮ
Производительность - 2.5.1
Ваше приложение использует или ссылается на следующие закрытые API:
transition:didComplete:
Использование непубличных API не разрешено в App Store, потому что это может привести к ухудшению пользовательского опыта в случае изменения этих API.
Этому приложению уже около полувека, и на протяжении многих лет, в основном из-за потребностей бизнеса, в нем много ссылок на сторонние SDK. На этом мы сосредоточим наше внимание, но след быстро иссякает и превращается в массовое удаление всего, пока мы не найдем части, которые включают этот старый код.
Мы знаем, что это не символ, otool
и nm
ничего не находят. strings
действительно находит совпадение (1 раз в сборке отладки и 2 раза в нашей окончательной сборке выпуска, если это является подсказкой или имеет значение). Похоже, что это вызов UIKit, поэтому я предполагаю, что это не так.
Кто-нибудь может предложить дальнейшие действия?
Мы просматриваем все архивы/библиотеки/двоичные файлы, на которые мы можем найти ссылки в проекте, и выполняем поиск строк. Если это не удастся, мы собираемся вырвать все SDK и выполнить деструктивный бинарный поиск, чтобы найти виновную сторону... Если есть горячая подсказка о том, как решить эту проблему, я весь слушаю!
Вот вывод командной строки (строки, otool и nm):
Dev-MBP:helloworld.app codemonkey$ otool -ov helloworld | grep -C 10 "transition:didComplete"
Dev-MBP:helloworld.app codemonkey$ nm helloworld | grep -C 10 "transition:didComplete"
Dev-MBP:helloworld.app codemonkey$ strings helloworld | grep -C 3 "transition:didComplete"
destinationLayout
prepareTransition:
performTransition:
transition:didComplete:
destinationViewController
sourceViewController
isViewTransition
--
--
destinationLayout
prepareTransition:
performTransition:
transition:didComplete:
destinationViewController
sourceViewController
isViewTransition
Dev-MBP:helloworld.app codemonkey$ strings helloworld | grep "transition:didComplete"
transition:didComplete:
transition:didComplete:
Dev-MBP:helloworld.app codemonkey$
grep -R 'transition:didComplete’ *
,-r
ИЛИ-R
вместо-C
- person TonyMkenu   schedule 29.09.2016