I'm in the process of making a React Native app that has a minSdkVersion of 16 (Android 4.1). It makes requests to HTTPS pages where the server has disabled TLS 1.0. From my understanding Android 4.X has TLS 1.1/1.2 capabilities, but they need to be invoked specifically. I found several people claiming to fix this, but those seem like pure Java solutions. For example:
Even with all that talk, what I can't wrap my head around and am wonder is this:
- Is it possible to solve this in any way without forking React Native?
I see this commit which seems like a feasible solution, but it does invade into the React Native source code, and I'd prefer to not have possible conflicts there in the future. I also see that you can create a custom SSLSocketFactory, but then how do I make all the requests through React Native use that factory? I also hear that you might have to update the device SSL version in some cases, but that doesn't really help if I can't invoke TLS 1.1/1.2 for my requests.