黑莓应用程序在模拟器中工作,但不在设备中工作

时间:2010-06-08 23:45:49

标签: blackberry httpconnection

我在本网站上阅读了一些类似的帖子,这些帖子涉及的问题似乎是同一个问题,而且回复似乎并没有为我澄清事情。

我的应用程序在模拟器中运行良好。我相信我在操作系统4.6上使用Bold 9000。该应用已签名。

我的应用程序通过3G进行HTTP调用以获取XML结果。 type是application / xhtml + xml。 在设备中,它没有错误。它没有出现错误的视觉信号。我告诉try catch将结果打印到屏幕上,我什么都没得到。 HttpConnection是从演示中取出的,在sim中工作正常。

由于它没有给出任何错误,我开始反思我在项目开始时回忆的事情。装置侧=真的吗?那样的东西? 我的请求只是HttpConnection connection =(HttpConnection)Connector.open(url); 其中url只是一个标准的url,没有获得vars。 根据我在屏幕一角看到连接箭头的时间,我假设应用程序正在启动与我的服务器的初始通信,然后得到一个糟糕的结果,或者它得到结果并且持久性存储不起作用预期

我不知道从哪里开始。发布代码将是荒谬的,因为它基本上是我的整个应用程序。

我想我的问题是,如果有人知道设备与模拟器的任何重大差异可能会导致像http连接或持久存储失败? 构建设置?操作系统限制?在开始设备测试之前,我可能只是不知道每个人应该做的任何标准程序?

由于

4 个答案:

答案 0 :(得分:3)

仅提供URL无效。您必须在URL后附加一些信息,以确定您的HTTP连接将使用的传输方法。例如,http://example.com;deviceside=true将使用DirectTCP(您可能还必须提供APN信息,但这些信息已保存在我的手机设备上)。 http://example.com;interface=wifi将使用wi-fi。在OS 5上有一个ConnectionFactory类,使这更容易。 Here's a link更详细。

答案 1 :(得分:1)

答案 2 :(得分:0)

可能是未指定APN的问题。有关详细信息,请参阅此问题的答案: video streaming over http in blackberry

答案 3 :(得分:0)

我会将此作为评论,但我认为我还没有足够的代表......所以我只是回答并希望这不会因为某些链接粘贴而受到影响。

过去一周,我一直在努力解决我们的应用程序中的这种网络问题,而且正如其他一些人所指出的那样,这确实很棘手。这里有两个链接真正帮助我们在不同设备上使用HTTP,特别是那些不提供ConnectionFactory的旧设备。

http://supportforums.blackberry.com/t5/Java-Development/Connecting-your-BlackBerry-http-and-socket-connections-to-the/td-p/206242

第一个包含一些代码示例,包括查询系统的ServiceBook和CoverageInfo类以确定哪种连接可以正常工作。