Apple и частные API

При выполнении "просто извлечения и выполненные", Вы собираетесь работать в проблемах безопасности. Это особенно верно, если Вы - пользователи, выполняют Vista (или позже). существует ли причина, почему Вы не хотели упаковывать свои приложения в установщике? Используя установщик облегчил бы "внешний источник" проблема. Вы были бы в состоянии использовать .chm файлы без любых проблем.

Мы используем InstallAware для создания наших пакетов установки. Это не дешево, но очень хорошо. Если стоивший Ваше беспокойство, , WIX является открытым исходным кодом и довольно устойчивый. WIX действительно имеет кривую обучения, но легко работать с.

7
задан Machavity 19 April 2017 в 15:50
поделиться

5 ответов

Частный API - это API, который не задокументирован в SDK. Например, класс инфраструктуры может объявлять метод, который не предназначен для использования сторонними разработчиками. Поведение частного API не гарантируется. Вы даже не можете быть уверены, что этот метод будет присутствовать в будущих обновлениях платформы. Его объявление, вероятно, недоступно в общедоступных файлах заголовков SDK.

17
ответ дан 6 December 2019 в 06:14
поделиться

Вам будет сложно случайно использовать частный API. Они не задокументированы в документации SDK и не отображаются в предложениях по завершению кода XCode.

Причина, по которой это стало в последнее время новостью, заключается в том, что создатель структуры, используемой несколькими приложениями, использовал частный API, поэтому, когда разработчики кто включил его фреймворк, обновил свои приложения, они были отклонены (хотя ЭТИ разработчики не использовали частный API, фреймворк, который они добавили в свое приложение, использовал).

Это единственный способ случайно использовать частный API .

6
ответ дан 6 December 2019 в 06:14
поделиться

Обычно из-за их отсутствия в заголовках SDK. Одно из соглашений Apple - начинать имена методов ObjC символами подчеркивания.

1
ответ дан 6 December 2019 в 06:14
поделиться

Нетрудно получить отказ из-за так называемого «использования частного API». Попробуйте использовать следующий атрибут в качестве атрибута Core Data, и он будет отклонен:

  • colorIndex
  • вхождение
  • id

Показывает, как робот сканирует API.

0
ответ дан 6 December 2019 в 06:14
поделиться

Не только частные API-интерфейсы могут вызвать отклонение вашего приложения. Использование недокументированных членов общедоступного API может привести к отклонению вашего приложения. Например, библиотека three20 (с момента исправления) обращалась к _phase и другим членам UITouch в категории.

Они также могут обнаруживать вызовы частных членов через performSelector, поскольку следующее также помечает отклонение:

UIWindow* window = [UIApplication sharedApplication].keyWindow]
return !![window performSelector:@selector(firstResponder)];

Еще больше беспокоит то, что если вы заставляете свое приложение работать в версиях 3.1 и 3.0, а во время выполнения в версии 3.0 вы не используете ничего из 3.1, ваше приложение все равно может быть отклонено. Примером может быть cameraOverlayView из UIImagePickerController (см. здесь ). Это немного озадачивает.

3
ответ дан 6 December 2019 в 06:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: