J'ai essayé d'authentifier l'utilisateur avec Facebook et Twitter sur iOS avec Amazon Cognito. Je ne peux pas mettre en œuvre car les documents officiels sont anciens.[iOS] [AWS Cognito] 'connexions' est obsolète: Utiliser "AWSIdentityProviderManager"
Voici mon code:
NSString *token = [FBSDKAccessToken currentAccessToken].tokenString;
credentialsProvider = [[AWSCognitoCredentialsProvider alloc] initWithRegionType:AWSRegionAPNortheast1 identityPoolId:IDENTITY_POOL_ID];
AWSServiceConfiguration *configuration = [[AWSServiceConfiguration alloc] initWithRegion:AWSRegionAPNortheast1
credentialsProvider:credentialsProvider];
credentialsProvider.logins = @{ AWSIdentityProviderFacebook: token };
NSLog(@"credentialsProvider.logins : %@", credentialsProvider.logins);
[AWSServiceManager defaultServiceManager].defaultServiceConfiguration = configuration;
Mais Xcode dit que ‘logins’ is deprecated: Use “AWSIdentityProviderManager” to provide a valid logins dictionary to the credentials provider
Je compris que credentialsProvider.logins retourne [null] que les connexions sont déconseillés.
Les documents officiels d'Amazon (anglais, japonais) & ne sont pas mis à jour donc je ne sais pas comment les implémenter correctement pour authentifier l'utilisateur.
Enfin, j'ai trouvé une solution pour cela dans Swift mais je ne sais pas.
AWS Cognito Swift credentials provider "logins is deprecated: Use AWSIdentityProviderManager"
import Foundation
import AWSCore
import AWSCognito
import AWSCognitoIdentityProvider
class CustomIdentityProvider: NSObject, AWSCognitoIdentityProviderManager{
var tokens : [NSString : NSString]?
init(tokens: [NSString : NSString]) {
self.tokens = tokens
}
@objc func logins() -> AWSTask {
return AWSTask(result: tokens)
}
}
let customProviderManager = CustomIdentityProvider(tokens: logins!)
self.credentialsProvider = AWSCognitoCredentialsProvider(
regionType: Constants.COGNITO_REGIONTYPE,
identityPoolId: Constants.COGNITO_IDENTITY_POOL_ID,
identityProviderManager: customProviderManager)
Pouvez-vous convertir ces codes à Objective-C et me dire comment utiliser les codes convertis dans mon code ci-dessus? Ou s'il vous plaît dites-moi le code officiel recommandé?
Salut, pouvez-vous s'il vous plaît me fournir votre fichier de mise en œuvre car j'ai le même problème. J'ai réussi à me connecter à Credentials Provider, j'ai obtenu un jeton de retour - alors maintenant j'ai besoin d'envoyer le jeton de se connecter à Amazon cognito mais je ne parvient pas à. –