Skip to content

Releases: aws-amplify/aws-sdk-android

AWS SDK for Android 2.12.6

23 Mar 00:57

Choose a tag to compare

Misc. Updates

  • AWS IoT
    • Fixed an internal SDK usage metrics tracker.

AWS SDK for Android 2.12.5

14 Mar 21:46

Choose a tag to compare

New Features

  • AWS Mobile Client

    • Added support for SAML in federatedSignIn().
    • Added support for developer authenticated identities in federatedSignIn(). See issue #577
    • Added support Cognito Hosted UI in showSignIn().
    • Added support to use OAuth 2.0 provider like Auth0 in showSignIn(). Federation for AWS credentials requires OpenID support from the provider.
    • Added support for global sign out.
    • Added support for device features which include list, get, updateStatus and forget. These APIs are available through getDeviceOperations().
  • Amazon Cognito Identity Provider

    • Fixed threading issues to ensure callbacks are made from main looper when xInBackground() method variants are used. See issue #722
  • Amazon Cognito Auth

    • Fixed erroneous user cancelled error when redirecting back to app. See issue #328

AWS SDK for Android 2.12.4

11 Mar 23:44

Choose a tag to compare

  • AWS Core
    • Fixed a crash in initializing CognitoCachingCredentialsProvider while migrating the data stored under expirationDate.

AWS SDK for Android 2.12.3

08 Mar 02:51

Choose a tag to compare

Enhancements

  • AWS Core

    • The SharedPreferences used by CognitoCachingCredentialsProvider is now encrypted.
    • Added a method CognitoCachingCredentialsProvider.setPersistenceEnabled(boolean), which is enabled (set to true) by default therefore the information is persisted in SharedPreferences. When disabled (set to false), the information will only be kept in memory.
  • Amazon CognitoIdentityProvider

    • The SharedPreferences used by CognitoUserPool is now encrypted.
    • Added a method CognitoUserPool.setPersistenceEnabled(boolean), which is enabled (set to true) by default therefore the information is persisted in SharedPreferences. When disabled (set to false), the information will only be kept in memory.
  • Amazon CognitoAuth

    • The SharedPreferences used by Auth is now encrypted.
    • Added a method Auth.setPersistenceEnabled(boolean), which is enabled (set to true) by default therefore the information is persisted in SharedPreferences. When disabled (set to false), the information will only be kept in memory.
  • AWSMobileClient

    • The SharedPreferences used by AWSMobileClient is now encrypted.

AWS SDK for Android 2.12.2

02 Mar 01:03

Choose a tag to compare

Misc. Updates

  • Model updates for the following services
    • Amazon S3

AWS SDK for Android 2.12.1

23 Feb 01:46

Choose a tag to compare

Bug Fixes

  • AWS Mobile Client
    • Fixed a bug that cause changePassword(String, String, Callback) to return error when successful. The error returned was null and will now call onResult(Void)

Enhancements

  • Amazon Cognito Identity Provider

    • The Amazon Cognito Identity Provider SDK now supports all Amazon Cognito Identity Provider APIs, including "CreateUserPool", "DescribeUserPool", "UpdateUserPool", "ListUserPools", "AdminEnableUser", "AdminDisableUser", "AdminConfirmRegisterUser", "AdminResetUserPassword", "AdminGetUser", "AdminUpdateUserAttributes", "AdminDeleteUserAttributes", "AdminDeleteUser". All admin APIs require developer credentials. Note that by using admin APIs, you are inherently dealing with privileged functions that could result in data loss, if improperly used.
    • Fixed initiateUserAuthentication() to respect runInBackground flag for network calls. See pr #702
  • AWS Core Runtime

    • Add templated callback structure for async methods across SDKs. Internal ReturningRunnable added to facilitate support for synchronous and asynchronous methods.

Misc. Updates

  • Model updates for the following services
    • AWS IoT
    • Amazon Lambda

AWS SDK for Android 2.12.0

08 Feb 20:10

Choose a tag to compare

Enhancements

  • Amazon Cognito Auth

    • Allow user to unbind the service after being done with authentication. See pr #615. Thanks @rlatapy-luna!
  • Amazon Cognito User Pools

    • Adds support for the SRP protocol at the beginning of custom auth. Please use AuthenticationDetails(String, String, Map<String, String>, Map<String, String>) to trigger custom auth flow with SRP protocol as the first step.
  • Amazon S3

    • Note: AWS Signature Version 4 (SigV4) is recommended for signing Amazon S3 API requests over AWS Signature Version 2 (SigV2) as it provides improved security by using a signing key rather than your secret access key. SigV4 is currently supported in all AWS regions while SigV2 is only supported in regions launched prior to Jan 2014. Amazon S3 will stop accepting requests signed using SigV2 in all regions on June 24, 2019, any
      requests signed using SigV2 made after this time will fail. Please visit the S3 documentation site to get more information on using SigV4: Signing Aamzon S3 requests using SigV4. You can find the list of
      changes between versions here: Changes in SigV4.
    • Deprecated the existing constructors in AmazonS3Client and introduced equivalent constructors that require the AWS region, because a valid AWS region is required to sign the request using SigV4. Please use the following constructors to specify the AWS region in order to sign the request to Amazon S3 using SigV4.
2.11.1 2.12.0
AmazonS3Client(AWSCredentials) AmazonS3Client(AWSCredentials, com.amazonaws.regions.Region)
AmazonS3Client(AWSCredentials, ClientConfiguration) AmazonS3Client(AWSCredentials, ClientConfiguration, com.amazonaws.regions.Region)
AmazonS3Client(AWSCredentialsProvider) AmazonS3Client(AWSCredentialsProvider, com.amazonaws.regions.Region)
AmazonS3Client(AWSCredentialsProvider, ClientConfiguration) AmazonS3Client(AWSCredentialsProvider, ClientConfiguration, com.amazonaws.regions.Region)
AmazonS3Client(AWSCredentialsProvider, ClientConfiguration, HttpClient) AmazonS3Client(AWSCredentialsProvider, ClientConfiguration, HttpClient, com.amazonaws.regions.Region)
AmazonS3Client(ClientConfiguration) AmazonS3Client(ClientConfiguration, com.amazonaws.regions.Region)

AWS SDK for Android 2.11.1

04 Feb 18:27

Choose a tag to compare

New Features

  • Amazon S3
    • Add the ability to specify the type of network connection (TransferNetworkConnectionType.ANY - any network, TransferNetworkConnectionType.MOBILE - mobile only, TransferNetworkConnectionType.WIFI - WiFi only) for the transfers through TransferUtilityOptions. The TransferUtilityOptions is passed to the TransferUtility object and is used for all the transfers that are initiated through this object. The network connection type can be passed while constructing the TransferUtilityOptions object through TransferUtilityOptions(int, TransferNetworkConnectionType). See pr #575. Thanks @nasdf!

Bug Fixes

  • Amazon Cognito Identity Provider

  • AWS IoT

    • Fixed a bug that caused some IoT connections to not reconnect after errors.
      See PR #660.
      Thanks @sklikowicz!
  • Amazon S3

    • Improved the state, progress and error reporting when the transfers are interrupted.
      • When the transfer is paused or cancelled by the user, the state is reported correctly.
      • When the transfer is interrupted because of a network drop, the state is set to WAITING_FOR_NETWORK when the TransferNetworkLossHandler is used.
      • When the transfer is interrupted otherwise, the transfer is set to FAILED and the exception is reported via TransferListener.onError callback.
    • Fixed the bug where progress is reported inaccurately (over 100%) when a transfer is paused by user or network drop and resumed before completion. See issue #677, issue #667, issue #616, issue #406

Enhancements

  • Amazon Cognito Identity
    • The Amazon Cognito Identity SDK now supports all Amazon Cognito Identity
      APIs, including admin APIs that require developer credentials. Note that by
      using admin APIs, you are inherently dealing with privileged functions that
      could result in data loss of data if improperly used. See issue
      #645

Misc. Updates

  • Model updates for the following services
    • AWS IoT
    • Amazon Comprehend
    • Amazon Cognito Identity Provider
    • Amazon Kinesis Firehose
    • Amazon Transcribe
    • Amazon Pinpoint

AWS Mobile SDK for Android v2.11.0

16 Jan 23:01

Choose a tag to compare

Enhancements

  • Amazon S3
    • Introduced TransferNetworkLossHandler, a utility that listens for network connectivity changes. TransferNetworkLossHandler pauses the on-going transfers when the network goes offline and resumes the transfers that were paused when the network comes back online.
    • TransferService will be moved to foreground state when the device is running Android Oreo (API Level 26) and above.
      • Transitioning to the foreground state requires a valid on-going Notification object, identifier for on-going notification and the flag that determines the ability to remove the on-going notification when the service transitions out of foreground state. If a valid notification object is not passed in, the service will not be transitioned into the foreground state.
      • The TransferService can now be started using startForegroundService method to move the service to foreground state. The service can be invoked in the following way to transition the service to foreground state: getApplicationContext().startForegroundService(intent);.

Bug Fixes

  • Amazon S3
    • Fixed a bug in TransferUtility where the state is not set to 'WAITING_FOR_NETWORK when network goes offline during execution of transfers.
    • Fixed a bug where objects with key name containing characters that require special handling are uploaded with URL encoded key name on the S3 bucket.
      • Since 2.4.0 version of the SDK, the key name containing characters that require special handling are URL encoded and escaped ( space, %2A, ~, /, :, ', (, ), !, [, ] ) by the AmazonS3Client, after which the AWS Android Core Runtime encodes the URL resulting in double encoding of the key name.
      • Starting 2.11.0, the additional layer of encoding and escaping done by AmazonS3Client is removed. The key name will not be encoded and escaped by AmazonS3Client. Now, the key name that is given to AmazonS3Client or TransferUtility will appear on the Amazon S3 console as is.
      • See issue #526, issue #321, issue #360
        , issue #545, issue #597.
    • Fixed a bug where AmazonS3Client.listObjects operation executed on a bucket, with key names containing characters that require special handling, returns the ListObjectsResponse with the key names being URL encoded.
      • When a S3 bucket contans objects with key names containing characters that require special handling, and since the SDK has an XML parser, (XML 1.0 parser) which cannot parse some characters, the SDK is required to request that Amazon S3 encode the keys in the response. This can be done by passing in url as encodingType in the ListObjectsRequest.
      • Since 2.4.0, there was a bug where the SDK did not decode the key names which are encoded by S3 when url is requested as the encodingType. This is fixed in 2.11.0, where the SDK will decode the key names in the ListObjectsResponse sent by S3.
      • If you have objects in S3 bucket that has a key name containing characters that require special handling, you need to pass the encodingType as url in the ListObjectsRequest.

Misc. Updates

  • Amazon S3
    • Allow requester-pays access for listObjects and listObjectsV2 requests.

beta_v2.10.4

16 Jan 04:17

Choose a tag to compare

add back dependency to s3 release for build