Подтвердить что ты не робот

Элементы iphone keychain сохраняются после удаления приложения?

Я играю с idandersen scifihifi-iphone код для связки ключей и натолкнулся на следующее поведение: я устанавливаю пароль, используя

>

[SFHFKeychainUtils storeUsername:@"User" andPassword:@"123"
                  forServiceName:@"TestService" updateExisting:YES error:&error];

Затем удалите тестовое приложение с устройства и установите его снова - ранее установленный пароль остается в цепочке ключей...
 Это ожидаемое поведение? И есть ли способ убедиться, что пароль, который я установил, будет удален приложением?

4b9b3361

Ответ 1

Да, это ожидаемое и правильное поведение.

Некоторые элементы связки ключей могут использоваться совместно с другими управляемыми вами приложениями (которые имеют одну и ту же группу доступа к элементам для ключей).

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

Ответ 2

Изменить: они, наконец, вернули поведение, описанное в моих ответах, поэтому, пока все не уйдут от этого диапазона версий, этого больше не должно быть.

К сожалению, это уже не так. Он был изменен с IOS 10.3.

Это намеренное изменение в iOS 10.3 для защиты конфиденциальности пользователей. Информация, которая может идентифицировать пользователя, не должна оставаться на устройстве после того, как созданное приложение было удалено.

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

См. Ссылку здесь.