Закрытый вызов API не разрешен в iOS (функция "exc_server") - PullRequest
0 голосов
/ 17 октября 2019

Мое приложение для iOS (с использованием сборщика мусора Boehm ) было отклонено в AppStore из-за одного вызова функции частного API. Здесь нарушающая функция в файле os_dep.c:

/* These are not defined in any header, although they are documented */
extern boolean_t
exc_server(mach_msg_header_t *, mach_msg_header_t *);

Здесь ссылка на файл: os_dep.c на github

Я пытался закомментировать обафункция определение и вызывают , и приложение кажется работающим нормально, но это очень плохой взлом.

Мой вопрос: критичен ли этот вызов функции? Это действительно нужно в iOS?

1 Ответ

0 голосов
/ 18 октября 2019

Функция требуется только в инкрементном режиме GC, который активируется вызовом GC_enable_incremental (). Я подозреваю, что вы не вызываете его, поэтому exc_server () и друзья не вызываются в приложении.

Вместо того, чтобы комментировать exc_server (), я бы порекомендовал вам передать "-D GC_DISABLE_INCREMENTAL", которыйудаляет поддержку инкрементного режима из двоичного файла коллектора.

...