2013-04-05 37 views
4

当从设备调用SOAP Web服务时,我在这里遇到了Codenameone的一个小问题。 如您所知,SOAP网络服务有自己的编码http请求的方式。这些编码规则在使用SOAP 1.1或1.2时也不同。获取SOAP Web服务的设备或模拟器信息运行时

当我在模拟器中运行时,它似乎使用了v1.2,并且这需要一定的方式来指定要使用的服务的http头。

当你在一个设备上(iPhone在这里),它会切换到SOAP 1.1,因此,http头需要以不同的方式编码(soap action,content type)。

所以这个问题:在我的代码中,我该如何确定运行哪个环境,模拟器或真实设备?而在这个过程中,如果我们需要根据设备性质来做这种特定的逻辑,我们该如何做这个检查?

在此先感谢您的任何提示。

回答

0

您可以使用

Display.getInstance().getPlatformName() 

返回您正在运行的平台的名称。

如果它在iPhone上运行,它将返回“ios”。 我做了一个快速测试,看到它也在模拟器中返回“ios”。

希望这会有所帮助