Skip to main content
Participating Frequently
June 3, 2015
Question

Android 5.0.2 Upgrade Invalidates RTMPS Streams

  • June 3, 2015
  • 1 reply
  • 4807 views

Hello,

I was the first yesterday in an unfortunately growing number of people who got an Android update which invalidated our Adobe Air app on Android only, not on iOS or the desktop as far as we can tell.  I am not exactly sure what updated except I know there was a Google Play update which updated six apps and I believe my Android version which is now 5.0.2.  Long story short, the app stopped working due to SharedObjects not working which are created using RTMPS, we get a generic "NetConnection.Connect.Failed" error code.  This is not new code or new certificates - this has been working for a couple of months.  I confirmed my certificates and all certificates in the chain did not expire.  I reinstalled my app, tried different versions of the app, tried using different servers with different hosts and certificates, rebooted the device, reinstalled Adobe Air, upgraded my Air and Flex SDKs, upgraded Oracle Java (JDK) on the server to 1.7u80 and also tried 1.8u45 - nothing seems to fix this issue and we are concerned that the Android upgrade will outpace our ability to fix it.  Since iOS and desktop apps work with RTMPS, we think the certificates are fine, but not sure.  Also, HTTPS to the same server works fine from the app, just RTMPS is not working.

Today we took a perfectly working Android device (both devices mentioned are Samsung Galaxy tablets) on Android version 4.x.y, tested it (it worked), upgraded Android to 5.0.2, tested it, and it stopped working.  So we know we are onto something with the new version breaking RTMPS.

Anyone have any ideas what to do?  Downgrading to RTMP is not an option.

Thanks,


Danny

This topic has been closed for replies.

1 reply

piyushb89979246
Adobe Employee
Adobe Employee
June 3, 2015

Hi,

Could you please share your sample project so that we can debug this issue in a better way?

-Piyush

Dr__DannyAuthor
Participating Frequently
June 5, 2015

Hello Piyush,

We have spent a lot of time debugging this and finally think we figured out what is wrong, but it appears to be beyond our control to fix.  There are three areas of concern: Android Lollipop, Adobe Air, and Java. Any help is of course appreciated.

Android Lollipop - Android 5.0 Behavior Changes | Android Developers

See the link above, section, "TLS/SSL Default Configuration Changes".  MD5, 3DES, export, and static key ECDH cipher suites are now disabled.  Forward Secrecy cipher suites (ECDHE and DHE) are preferred.

Adobe Air - Adobe Flash Platform * Basics of networking and communication

Adobe Air supports SSLv3 and TLSv1.  There is not enough supporting documentation to know which ciphers Adobe is using.

Java - https://docs.oracle.com/javase/8/docs/technotes/guides/security/SunProviders.html

Java has explicit ciphers it supports and there are footnotes denoting the TLS compatibility for particular ciphers.  The cipher we suspect Adobe Air is using is only compatible with TLSv1.2 in Java.  Adobe Air is not stepped up to TLSv1.2, it is on TLSv1.  We are not completely sure, but we think according to the Java security log, that Adobe is trying to use, "Negotiating:  [Session-1, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384]". According to the Java link above, that cipher is not compatible with TLSv1.

How do we force Adobe Air to use a different cipher, even if we are limited to TLSv1 that are in the Java compatibility list and the Android Lollipop list?

Also, getting our project is slightly complicated, we require login credentials and an account.  I can make that for you since you work for Adobe (this is not something we normally support), but you would have to contact me offline so I can create the credentials and share the project information.

Thanks,

Danny

piyushb89979246
Adobe Employee
Adobe Employee
June 5, 2015

Hi,

I have created a sample Project using RTMPS protocol and it is working fine on android Samsung s4(GT-I9500) 5.0.1 device.

Please check whether <SSLCypherSuite> tag in adapter.xml file is changed or not. The value that i have used is

<SSLCipherSuite>ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH</SSLCipherSuite>

Could you please check if you are facing the same issue on any other device having OS apart from 5.0.2?

Regards

Adobe AIR Team