Apple рассказала в своём блоге, что с весны 2024 года разработчики должны будут закреплять в манифесте конфиденциальности приложения причины, по которым используют определённый API в коде в приложения. Это, по словам компании, направлено на борьбу с неправомерным сбором информации о пользователях.

Некоторые API теперь можно использовать только по «уважительным причинам». Разработчики под iOS, iPadOS, watchOS, tvOS, macOS и visionOS должны будут описывать сценарии использования и аргументировать использование таких API. С весны 2024 года App Store Connect не будет принимать приложения без дополненных манифестов конфиденциальности.

Список API и их методов

API-интерфейсы меток времени файлов:

  • creationDate

  • modificationDate;

  • fileModicationDate;

  • contentModificationDateKey;

  • creationDateKey;

  • getattrlist(:::::);

  • getattrlistbulk(:::::);

  • fgetattrlist(:::::);

  • stat;

  • fstat(::);

  • fstatat(::::);

  • lstat(::);

  • getattrlistat(::::::).

API времени загрузки системы:

  • systemUptime;

  • mach_absolute_time().

API дискового пространства:

  • volumeAvailableCapacityKey;

  • volumeAvailableCapacityForImportantUsageKey;

  • volumeAvailableCapacityForOpportunisticUsageKey;

  • volumeTotalCapacityKey;

  • systemFreeSize;

  • systemSize;

  • statfs(::);

  • statvfs(::);

  • fstatfs(::);

  • fstatvfs(::);

  • getattrlist(:::::);

  • fgetattrlist(:::::);

  • getattrlistat(:::::_:).

API клавиатуры:

  • activeInputModes.

API-интерфейсы по умолчанию:

  • UserDefaults.

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