4

SOAP从设备调用 Web 服务时,我在这里遇到了 Codenameone 的一个小问题。您可能知道,SOAPWeb 服务有自己的方式来编码 http 请求。SOAP无论您使用1.1 还是 1.2,这些编码规则也不同。

当我在模拟器中运行时,它似乎使用了 v1.2,这需要以某种方式指定 http 标头以使服务正常工作。

当您在设备上(此处为 iPhone)时,它会切换到SOAP1.1,因此需要对 http 标头进行不同的编码(soap 操作、内容类型)。

所以问题是:在我的代码中,我怎样才能确定在哪个环境、模拟器或真实设备中运行?在此过程中,如果我们需要根据设备性质执行此类特定逻辑,我们如何进行此检查?

提前感谢您的任何提示。

4

1 回答 1

0

您可以使用

Display.getInstance().getPlatformName()

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

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

希望这可以帮助

于 2015-02-15T20:10:13.873 回答