Скоро весьма строгий процесс проверки приложений на соответствие рекомендациям Apple при добавлении в App Store станет ещё более дотошным. Apple недавно объявила, что разработчики должны будут подробно объяснить, почему их приложения используют определённые API, прежде чем отправлять их в App Store. Компания поясняет, что эта мера направлена на борьбу со сбором данных об устройствах пользователей.
Как указано на сайте Apple Developer, некоторые API теперь классифицируются как Required Reason API и для того, чтобы использовать их в приложении, разработчик должен объяснить Apple свой выбор именно этого API. «Чтобы предотвратить неправомерное использование определённых API, которые могут использоваться для сбора данных об устройствах пользователей с помощью фингерпринтинга, вам необходимо объявить причины использования этих API в манифесте конфиденциальности вашего приложения. Это поможет гарантировать, что приложения будут использовать эти API только по прямому назначению», — объясняет Apple.
Фингерпринтинг (fingerprint — отпечаток пальца) идентифицирует пользователя по уникальным особенностям его браузера, системы и устройства. Поскольку фингерпринтинг не требует хранения данных у клиента, его очень трудно заметить и почти невозможно избежать, что значительно упрощает слежку за действиями пользователя. Фингерпринтинг использует для идентификации пользователя его IP-адрес, версию браузера и системы, системный язык, разрешение экрана, часовой пояс, показания часов с точностью до миллисекунды и список стандартных шрифтов и любые другие доступные данные.
Начиная с этой осени, с выпуском iOS 17, tvOS 17, watchOS 10 и macOS Sonoma, разработчики будут получать уведомления при добавлении приложений с использованием Required Reason API без описания причин его использования. С весны 2024 года приложения, использующие эти API без уважительной причины, будут отклоняться.
Хотя эта мера направлена на сохранение конфиденциальности пользователей, некоторые разработчики обеспокоены потенциальным ростом числа отказов размещения приложений и обновлений в App Store. Например, Apple относит UserDefaults к Required Reason API, хотя это базовый и довольно распространённый API, в котором хранятся пользовательские настройки для приложения и его использует множество приложений.
Использование UserDefaults теперь может привести к автоматическому удалению приложения из App Store просто потому, что разработчик забудет добавить объяснение использования этого API, так как полагает его применение само собой разумеющимся. К тому же неясно, как Apple будет контролировать использование этого API, поскольку большинство разработчиков будут утверждать, что просто хранят с его помощью пользовательские настройки.
Apple пообещала разработчикам возможность обжалования отказа и получения разъяснений в случае, который не охвачен текущими рекомендациями. Более подробную информацию можно найти на сайте Apple Developer.