ACAccountStore больше не работает с Twitter?(Swift, iOS 12) - PullRequest
1 голос
/ 28 апреля 2019

У меня есть метод, который позволяет пользователю подписаться на другую учетную запись Twitter с помощью Twitter API, однако этот метод перестал работать с iOS 11.

Потому что: Социальные учетные записи были удалены из настроек в iOS 11. Сторонние приложения больше не имеют доступа к этим зарегистрированным учетным записям. (31687059)

(В следующем методе возвращаемое значение «isGranted» будет ложным, а код ошибки будет: ошибка 7 от apple.com)

Есть ли способ обойти это?

static func followAppTwitter(_ twitterScreenName: String) {

    let accountStore = ACAccountStore()
    let twitterType = accountStore.accountType(withAccountTypeIdentifier: ACAccountTypeIdentifierTwitter)

    accountStore.requestAccessToAccounts(with: twitterType, options: nil,
        completion: { (isGranted, error) in
            guard let userAccounts = accountStore.accounts(with: twitterType),
                userAccounts.count > 0 else { return }
            guard let firstActiveTwitterAccount = userAccounts[0] as? ACAccount else { return }

            // Then do a data post to twitter API
            // ......
    })
}
...