AWS Mobile SDK for Android v2.8.0
New Features
- AWS Mobile Client
- The
AWSMobileClientprovides client APIs and building blocks for developers who want to create user authentication experiences. It supports the following new features:- User state tracking:
AWSMobileClientoffers on-demand querying for the “login state” of a user in the application. - Credentials management: Automatic refreshing of
Cognito User PoolsJWT TokenandAWS CredentialsfromCognito Identity. - Offline support:
AWSMobileClientis optimized to account for applications transitioning from offline to online connectivity, and refreshing credentials at the appropriate time so that errors do not occur when actions are taken and connectivity is not available. - Drop-in Auth UI:
AWSMobileClientclient supports easy “drop-in” UI for your application. - Simple, declarative APIs
signUp,signIn,confirmSignIn, etc.
- User state tracking:
- The
Note: The existing methods of
AWSMobileClientare deprecated and will be removed in a future minor version.AWSMobileClientnow takes a dependency onAWSCognitoIdentityProvider(Cognito User Pools SDK) package to offer integration withCognitoUserPools. When using the new drop-in UI,AWSAuthUIandSocial sign-infeatures continue to be pluggable dependencies forAWSMobileClient.
All documentation is now centralized at https://aws-amplify.github.io/
Enhancements
- Amazon Kinesis Video Streams
- Improve exception handling.
- Lower default memory allocation to 385MB to reduce crashes from over-allocation.
- Breaking API Changes
- Remove
streamNameparameter fromKinesisVideoClient.registerMediaSource()asMediaSourcealready has the stream name inStreamInfo. - Add
KinesisVideoClient.unregisterMediaSource()to removeMediaSourcetoKinesisVideoProducerStreambinding fromKinesisVideoClient. Customers can useunregisterMediaSource()after they stop streaming, soMediaSourcedata will not to be sent to Kinesis Video Streams. - Add
getStreamInfo()toMediaSourceinstead ofMediaSourceConfiguration. If customers have implemented their ownMediaSourceandMediaSourceConfiguration, they would need to provide stream information viaMediaSource.getStreamInfo(). TheMediaSourceConfiguration.getStreamInfo()will not work. - The following classes are no longer publicly available.
MediaSourceMediaSourceConfigurationMediaSourceSinkAbstractKinesisVideoClientNativeKinesisVideoClientBytesGeneratorBytesMediaSourceBytesMediaSourceConfigurationProducerStreamSinkKinesisVideoServiceClientNativeKinesisVideoProducerJniNativeKinesisVideoProducerStreamNativeLibraryLoaderKinesisVideoMetricsKinesisVideoProducerKinesisVideoProducerStreamKinesisVideoStreamMetricsReadResultServiceCallbackscom.amazonaws.kinesisvideo.service.exception.AccessDeniedExceptioncom.amazonaws.kinesisvideo.service.exception.AmazonServiceExceptioncom.amazonaws.kinesisvideo.service.exception.ResourceInUseExceptioncom.amazonaws.kinesisvideo.service.exception.ResourceNotFoundExceptionAckConsumerBlockingAckConsumerDefaultServiceCallbacksImpl
- Remove