AWS S3 TransferObserver Doesn't Give Any Errors When Internet is Not Available

5 days ago 9
ARTICLE AD BOX

I'm using this library: com.amazonaws:aws-android-sdk-s3:2.81.1

And the setup for TransferObserver:

val observer = transferUtility.upload( fileName, context.contentResolver.openInputStream(uri) ) observer.setTransferListener(object : TransferListener { override fun onStateChanged(id: Int, state: TransferState?) { Log.d("xxx", "state: $state") //Problem 1 } override fun onProgressChanged(id: Int, bytesCurrent: Long, bytesTotal: Long) {} override fun onError(id: Int, e: Exception) { Log.e("xxx", "Error: ${e.message}") //Problem 2 } })

Problem 1: When this runs without internet, the state will stay in WAITING_FOR_NETWORK, I was expecting it to change to FAILED but it never happens.

Problem 2: When this runs without internet, onError() is not called.

Question: Is this normal/intended?

Read Entire Article