Skip to content

Releases: aws-amplify/aws-sdk-android

AWS SDK for Android 2.12.0

08 Feb 20:10
Compare
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
Compare
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
Compare
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
Compare
Choose a tag to compare
add back dependency to s3 release for build

beta_v2.10.3

16 Jan 04:15
Compare
Choose a tag to compare
Delete old docs to remove straggling files

beta_v2.10.2

16 Jan 04:08
Compare
Choose a tag to compare
remove extras

AWS Mobile SDK for Android v2.10.1

11 Jan 23:45
Compare
Choose a tag to compare

Bug Fixes

  • Amazon Pinpoint
    • Fixed a bug where Attributes were not being sent in the Event payload while submitting events to Pinpoint. See PR #641

AWS Mobile SDK for Android v2.10.0

03 Jan 19:10
Compare
Choose a tag to compare

Misc. Updates

  • Model updates for the following services
    • Amazon Lex
      • Added overrides to various InteractionClient and LexServiceContinuation methods, to allow passing request attributes
      • Breaking API Changes: The following APIs have been changed:
        • PostContentRequest, PostContentResponse
          • Certain properties which used to have a type of Map<String, String> are now String. This requires your calling code to
            JSON serialize and base64-encode the value. The get, set and with APIs of the following properties are affected:
            • PostContentRequest.requestAttributes
            • PostContentRequest.sessionAttributes
            • PostContentRequest.slots
            • PostContentResponse.requestAttributes
            • PostContentResponse.sessionAttributes
            • PostContentResponse.slots

AWS Mobile SDK for Android v2.9.2

02 Jan 21:14
Compare
Choose a tag to compare

Bug Fixes

  • AWS IoT

    • AWSIotMqttManager passes publish exceptions via the callback. If callback is not provided it throws AmazonClientException.
    • AWSIotMqttManager logs the reconnection errors and pass it to the user provided connection callback.
  • Amazon Pinpoint

    • Fixed bug that could potentially cause rejected events to be dropped incorrectly because service response could not be unmarshalled. The response will now be processed correctly and events rejected by the service will be retried.
  • Amazon S3

    • Fixed a bug where a disk operation to remove completed transfers from database was performed on the main thread. See issue #603

AWS Mobile SDK for Android v2.9.1

14 Dec 22:32
Compare
Choose a tag to compare

New Features

  • Amazon Cognito Auth
    • Added customization for CustomTabs through setCustomTabsExtras() in the builder. See PR #608

Bug Fixes

  • AWS IoT

    • Fixed bug that leaked threads during reconnect. See PR #601
    • Fixed reporting of failed message publishes during reconnect. See PR #407
    • Fix reconnection failure upon network disconnect. Any subsequent reconnect honors the value passed to the cleanSession flag. See issue #584 and PR #612
  • AWS Mobile Client

    • Fixed exception being thrown from getCredentials() and refresh() to adhere to AmazonClientException to allow other portions of SDK to catch properly. Previously a generic RuntimeException was being thrown; AmazonClientException is a subclass of RuntimeException. See issue #588