apk文件上的Flex Mobile HTTP请求错误

时间:2012-10-04 09:48:05

标签: actionscript mxml flex-mobile httpservice http-request

我正在使用Flex Builder 4.6开发一个Android应用程序。 这是一个相当复杂的应用程序,我正在使用 HTTPService 与服务器进行通信。 它工作正常,直到最近它在制作apk文件后停止工作。 因此,从桌面模拟器,在移动设备的调试模式下,HTTTPService工作正常,但是当我进行发布版本并将其安装在移动设备中时,它就无法正常工作。

我试图追踪错误,它只是简单地显示'HTTP请求错误'。 例如,这里是我正在使用的mxml代码

<s:HTTPService id="sayHi" method="GET" result="sayHi_resultHandler(event)" fault="sayHi_faultHandler(event)"
                   url="https://zaawi.co.uk/developer/controller.php" useProxy="false">
        <s:request xmlns="">
            <h>sayHi</h>
        </s:request>
    </s:HTTPService>

我检查了浏览器中的网址https://zaawi.co.uk/developer/controller.php?h=sayHi,该网址工作正常,以及模拟器和调试模式。

服务器(php)以xml格式发送响应

print '<?xml version="1.0" encoding="UTF-8"?><data><hi>hello world</hi></data>';

它工作了好近一年,最近才停止工作。

如果有其他人遇到此问题,请告诉我,我该如何解决此问题。

非常感谢提前

2 个答案:

答案 0 :(得分:0)

前一段时间我遇到过类似的问题,我的HTTPService请求开始失败,我在FaultEvent中没有任何有用的东西,但经过几个小时尝试不同的事情我注意到我启用了网络监视器< / strong>在弹性,因为我没有什么可以松动,我禁用它瞧!该应用程序再次运行!

我认为当您启用网络监视器时,应用程序会通过本地代理或其他方式重定向所有请求,这样您就可以嗅探请求,但是当您创建发布版本并弄乱所有请求时,这似乎仍然存在。 / p>

因此,如果您启用了网络监视器,只需将其禁用,然后再尝试构建您的应用程序。

答案 1 :(得分:0)

它似乎与强制运行时调用https端点的方式有关。有人在这个线程上Adobe AIR mobile app fails when using HTTPS on Nexus tablet, but works on Kindle发现,通过从强制运行时切换到使用共享AIR运行时,错误就消失了。您可能还想尝试最新的AIR SDK,看看是否能解决问题(尽管我已经看到使用3.8 beta版本在iOS上运行的应用程序存在问题,因此您可能需要先尝试3.7。)