На самом деле это ложное предупреждение, появившееся в iOS 10 и macOS 10.12:
Совет NSUserDefaults: в текущих ОС регистрируется ошибка «… с контейнером разрешено только для системных контейнеров…».
Это подделка.
Пытался отловить тот или иной режим отказа, заодно отловил случай нормальной работы.
Мой преемник по UserDefaults также не нашел способа сделать это менее тревожным, не сделав симптоматический случай невозможным для отладки: /
https://twitter.com/Catfish_Man/status/784460565972332544 [поток]
Совет о добавлении идентификатора вашей команды отключит предупреждение, но также создаст новые пустые пользовательские значения по умолчанию. Это приведет к тому, что любые ранее сохраненные данные станут нечитаемыми.
На данный момент решение - просто игнорировать это.
Также сотрудник Apple CFM на форумах :
Записанное сообщение является ложным, если вы не делаете очень специфические вещи, которые, как я думаю, возможны без использования частных функций (оно было добавлено для выявления неправильного использования этих функций, но, к сожалению, также обнаружено нормальный случай использования).