Flex – When using HTTPS on a Nexus tablet, Adobe Air mobile app fails, but for Kindle

Well, it burned for 4 hours, so I turned to SO for help.

The following are facts, so you can quickly understand:

p>

>The AIR Mobile application running on our laptop works well, and every Android device we tested in HTTP mode (Kindle, Nexus, Asus A100)
>Once we switch to HTTPS, Only laptops and Kindle devices will connect to the server
>On other devices, I receive a FaultEvent with an error message: “Send Failed.Channel.Connect.Failed error NetConnection.Call.Failed https://www.example .com/flex2gateway/cfamfsecure/”
>I can click on the URL above Nexus/A100 in the browser, and it returns a blank page as expected
>Flex based application using this same connection It has been around for many years without problems-but this is the first AIR application that uses this HTTPS connection
>I am using the Captive Runtime feature
>ColdFusion 9 backend
>I can’t debug network traffic because of it It only happens on a tablet, I currently don’t know how to capture traffic on a tablet, just like I can use Fidder on my laptop (research now)

I will provide anything else you need Information, and as soon as possible-please tell me.

In addition to the above, I also checked some other content: make sure the crossdomain.xml file exists and is set correctly, change the services-config.xml file of CF Settings, etc..

My current thinking is that it might be related to the link in the SSL certificate – like the root CA is not trusted on Nexus or something? (This is GlobalSign Root CA) Or is it related to the default browser, such as Flex Day and IE/Proxy?

Have never seen this before, so I will accept any help I can get.

[Update]: I created a small sample, you can use it to replicate this problem : Https://www.dropbox.com/s/5nmilo3tbwr2k8d/HTTPTestSource.zip

It will contain everything you need: source code, compile .AIR (for desktop), compile .APK (use (For Android devices). The desktop works well in HTTP and HTTPS, while the mobile APK is only available for HTTP. I also provide a sample CFC that can be placed on your own server as needed.

Thank you for reading This article!

[solve]

Ok, I made it fit My situation – hope this helps others.

The problem is AIR Captive Runtime. It doesn’t seem to work when using HTTPS. I had to switch to it because my first development hardware was Kindle Fire, and AIR Runtime is pre-installed on Kindle Fire, but I need the latest version of AIR. So, I just turned on the captive runtime and continue my happy way.

When we go online, we will The endpoint was changed to our HTTPS server, while the Kindles continued to work, all other tablets failed.

To solve this problem, I closed the Captive Runtime and recompiled, now after canceling/reinstalling it, it Can run on all my tablets, except Kindle Fire, I just need to provide a different installation.

Hope this helps others have the same problem.

< /p>

Well, it burned for 4 hours, so I turned to SO for help.

The following are facts, so you can quickly understand:

> The AIR Mobile application running on our laptop works well, and every Android device we tested in HTTP mode (Kindle, Nexus, Asus A100)
>Once we switch to HTTPS, only the laptop and Kindle The device will connect to the server
>On other devices, I receive a FaultEvent and the error displays: “Send Failed.Channel.Connect.Failed error NetConnection.Call.Failed https://www.example.com/flex2gateway/ cfamfsecure/”
>I can click on the URL above Nexus/A100 in the browser and it will return a blank page as expected
>Flex-based applications using this same connection have existed for many years without problems – But this is the first AIR application that uses this HTTPS connection
>I am using Captive Runtime function
>ColdFusion 9 backend
>I cannot debug network traffic because it only happens on tablets On, I currently don’t know how to capture traffic on a tablet, Just like I can use Fidder on my laptop (research now)

I will provide any other information you need and as soon as possible – please let me know.

In addition to the above In addition, I also checked some other content: make sure the crossdomain.xml file exists and is set correctly, change the settings in the services-config.xml file of CF, etc.

My current thinking is that it may It has to do with the link in the SSL certificate-like the root CA is not trusted on Nexus or something? (This is GlobalSign Root CA) Or is it related to the default browser, such as Flex Day and IE/Proxy?

Have never seen this before, so I will accept any help I can get.

[Update]: I created a small sample, you can use it to replicate this problem : Https://www.dropbox.com/s/5nmilo3tbwr2k8d/HTTPTestSource.zip

It will contain everything you need: source code, compile .AIR (for desktop), compile .APK (use (For Android devices). The desktop works well in HTTP and HTTPS, while the mobile APK is only available for HTTP. I also provide a sample CFC that can be placed on your own server as needed.

Thank you for reading This article!

[Solution]

Well, I made it suitable for my situation-hope this helps others.

The problem is AIR Captive Runtime. It doesn’t seem to work when using HTTPS. I had to switch to it because my first development hardware was Kindle Fire, and AIR Runtime was pre-installed on Kindle Fire, But I need the latest version of AIR. So, I just turned on the captive runtime and continued my happy way.

When we went online, we changed the endpoint to our HTTPS server and the Kindles continued to work , All other tablets are malfunctioning.

In order to solve this problem, I closed Captive Runtime and recompiled, now after canceling/reinstalling, it can run on all my tablets, except Kindle Fire, I just need to provide a different installation.

Hope this helps others with the same problem.

Leave a Comment

Your email address will not be published.