Как сохранить учетные данные в приложении, чтобы включить функцию автозаполнения? - PullRequest
0 голосов
/ 09 января 2020

Я хочу, чтобы мое приложение сохраняло данные имени пользователя и пароля, например, при первом входе в систему или регистрации, поэтому позже, когда пользователь попытается войти снова, ОС предложит автоматически заполнить форму. То же самое происходит, когда приложение предлагает учетные данные, сохраненные в Safari, но я также хочу, чтобы мое приложение сохраняло эти учетные данные, если вход в систему происходит там. Согласно документации Apple, я думаю, что это должно быть возможно:

https://developer.apple.com/documentation/security/shared_web_credentials/managing_shared_credentials

Если пользователь может создавать новые учетные записи в вашем приложении, вы должны сохранить имя пользователя и пароль для общих веб-учетных данных. Таким образом, пользователь может легко получить доступ к учетной записи из Safari, а также из вашего приложения. Вы можете сохранить имя пользователя и пароль в общих веб-учетных данных, используя функцию SecAddSharedWebCredential (: : : :), как показано.

Однако, когда я сделать это:

SecAddSharedWebCredential(domain as CFString, username as CFString, password as CFString) { error in
      if let error = error {
          print(error)
      }
}

Я распечатал следующую ошибку:

Ошибка домена = NSOSStatusErrorDomain Code = -909 «Автозаполнение не включено в настройках Safari» UserInfo = {NSDescription = Автозаполнение не включено в настройках Safari}

1 Ответ

0 голосов
/ 09 января 2020

При создании приложения вы подтвердите, кто вы такой, через Apple, чтобы доказать следующее:

  1. То, что ваше приложение будет использовать возможность Associated Domains.
  2. То, что ваш Team ID действительно действителен.

Ознакомьтесь с этим руководством для получения справки Как защитить пароли вашего приложения с помощью Safari AutoFill в iOS 8

...