How should I configure the defaultServiceConfiguration, if...
- I'm using a custom identity provider to authenticate registered users via Cognito. (I don't care who it is until the user is registered to our service with user/password)
- I want to use Mobile Analytics to track events anytime in the app. (Even for users not registered)
Currently the code for authentication looks like this and is executed lazily, only when a feature reserved for registered users is used:
CustomIdentityProvider *customIdentityProvider = [[CustomIdentityProvider alloc] initWithIdProvider:idProvider
accountId:_accountId
identityPoolId:_identityPoolId
idToken:idToken];
customIdentityProvider.logins = @{idProvider.name:idToken};
AWSCognitoCredentialsProvider *credentialsProvider = [[AWSCognitoCredentialsProvider alloc] initWithRegionType:AWSRegionUSEast1
identityProvider:customIdentityProvider
unauthRoleArn:nil
authRoleArn:nil];
AWSServiceConfiguration *configuration = [AWSServiceConfiguration configurationWithRegion:AWSRegionUSEast1
credentialsProvider:credentialsProvider];
[AWSServiceManager defaultServiceManager].defaultServiceConfiguration = configuration;
AWSTask * getIdentityIdTask = [credentialsProvider getIdentityId];
In order to use Mobile Analytics anytime in the app, will I have to set defaultServiceConfiguration at startup? But in that case, I don't have the logins yet. How should I authenticate the user without login?
Thanks.