Приложение Mac недавно отклонено из Mac App Store для использования непубличных API-интерфейсов (см. Ниже), и я не уверен, как решить проблему - главным образом потому, что сам не полностью понимаю проблему.
Я пытался использовать otool -L и nm -u, чтобы получить лучшее представление о проблеме, но в терминале я получаю предупреждение «Не удается отобразить файл».
Также важно отметить, что я использую PyObjC в приложении, которое, как мне кажется, является источником этой проблемы.
2,5
Использование непубличных API может привести к
плохой пользовательский опыт, если они
API меняются в будущем, и это
поэтому не допускается. Следующие
непубличные API включены в ваш
Применение:
'pthread_key_init_np', framework:
'/Usr/lib/libSystem.B.dylib'
'Auto_assign_weak_reference',
framework: '/usr/lib/libauto.dylib'
'auto_collect', фреймворк:
'/Usr/lib/libauto.dylib'
'Auto_collect_multithreaded',
framework: '/usr/lib/libauto.dylib'
'auto_collection_parameters',
framework: '/usr/lib/libauto.dylib'
'auto_read_weak_reference', framework:
'/Usr/lib/libauto.dylib'
'auto_zone_add_root', фреймворк:
'/Usr/lib/libauto.dylib'
'Auto_zone_allocate_object',
framework: '/usr/lib/libauto.dylib'
'Auto_zone_assert_thread_registered',
framework: '/usr/lib/libauto.dylib'
'Auto_zone_atomicCompareAndSwap',
framework: '/usr/lib/libauto.dylib'
'Auto_zone_atomicCompareAndSwapPtr',
framework: '/usr/lib/libauto.dylib'
'auto_zone_clear_stack', фреймворк:
'/Usr/lib/libauto.dylib'
'auto_zone_create', framework:
'/Usr/lib/libauto.dylib'
'auto_zone_dump', framework:
'/Usr/lib/libauto.dylib'
'auto_zone_erase_associative_refs',
framework: '/usr/lib/libauto.dylib'
'Auto_zone_get_associative_ref',
framework: '/usr/lib/libauto.dylib'
'Auto_zone_get_layout_type',
framework: '/usr/lib/libauto.dylib'
'auto_zone_is_collecting', фреймворк:
'/Usr/lib/libauto.dylib'
'auto_zone_is_finalized', фреймворк:
'/Usr/lib/libauto.dylib'
'Auto_zone_is_valid_pointer',
framework: '/usr/lib/libauto.dylib'
'Auto_zone_register_datasegment',
framework: '/usr/lib/libauto.dylib'
'Auto_zone_register_thread',
framework: '/usr/lib/libauto.dylib'
'auto_zone_release', фреймворк:
'/Usr/lib/libauto.dylib'
'auto_zone_retain', framework:
'/Usr/lib/libauto.dylib'
'auto_zone_retain_count', framework:
'/Usr/lib/libauto.dylib'
'Auto_zone_root_write_barrier',
framework: '/usr/lib/libauto.dylib'
'Auto_zone_set_associative_ref',
framework: '/usr/lib/libauto.dylib'
'auto_zone_set_class_list', framework:
'/Usr/lib/libauto.dylib'
'Auto_zone_set_write_barrier',
framework: '/usr/lib/libauto.dylib'
'auto_zone_size', framework:
'/Usr/lib/libauto.dylib'
'auto_zone_start_monitor', framework:
'/Usr/lib/libauto.dylib'
'Auto_zone_unregister_datasegment',
framework: '/usr/lib/libauto.dylib'
'Auto_zone_unregister_thread',
framework: '/usr/lib/libauto.dylib'
'Auto_zone_write_barrier_memmove',
framework: '/usr/lib/libauto.dylib'
Если вы определили методы в вашем
исходный код с теми же именами, что и
Вышеупомянутые API, мы предлагаем
изменить ваши имена методов так, чтобы
они больше не сталкиваются с Apple
частные API, чтобы избежать вашего приложения
помечается в будущих представлениях.
Кроме того, один или несколько
вышеупомянутые API могут находиться в
библиотека включена в ваш
приложение. Если у вас нет доступа
к источнику библиотеки, вы можете быть
возможность поиска скомпилированного двоичного файла
используя команду «strings» или «otool»
инструменты Инструмент «Струны» может
вывести список методов, которые
библиотека звонков и «otool -ов» будет
вывести класс Objective-C
структуры и их определенные методы.
Эти методы могут помочь вам сузить
вниз, где проблемный код
проживает.