在BlackBerry OS 5+上从浏览器打开BBMaps

时间:2011-06-03 02:40:47

标签: web-applications kml blackberry-storm blackberry-maps

我完全无法使用他们的文档指示的方法从BBOS5设备从BlackBerry浏览器打开BBMaps。这个功能真的坏了 - 文档真的错了吗?或者我做错了什么?

支持这样做是在BBOS 4.5中添加的,据称通过版本6存在。有an old thread about it on the BlackBerry forums;该线程中的一个示例网站无法在Storm 2上运行,而另一个应用程序已关闭。

Per the documentation, BBOS 5 allegedly supports both KML and the proprietary BlackBerry location markup language XLOC.

我认为至少XLOC会起作用,因为version 6 allegedly retained support for XLOC and dropped KML support。但是没有。

我在Storm 2模拟器中运行5.0.0.713,在物理Storm 2上运行5.0.0.1015。

我认为文档是错误的。我无能为力 - KML,KMZ,XLOC,动态生成,具有适当MIME类型的静态文件等等。这真的不应该这么难!

这里有一些值得思考的问题:如果你在浏览器中访问maps.blackberry.com上的地图......为什么没有选择在Blackberry Maps中打开它?

由于这是一个专业的网络项目,我无法公开分享环境。不过,我可以在我的个人服务器上复制相关部分。这真的令人沮丧,因为我们真的很想支持黑莓用户,但我们开始认为这是不可能的。

如果有人能够提供这样做的工作示例(特别针对BlackBerry Storm 2),我将非常感激。如果有人能够确认这是不可能的,那也值得。

1 个答案:

答案 0 :(得分:1)

原来如此!答案在于忽视所有这些并using the BlackBerry Javascript API。只需create the address as a json object according to the spec,并像这样调用blackberry.launch.newMap:

<script type="text/javascript"> 
    var workAddress = {
        "address1": "1600 Pennsylvania Ave.",
        "city": "Washington",
        "country": "USA",
        "stateProvince": "DC",
        "zipPostal": "20500"
    };

    blackberry.launch.newMap({ "address": workAddress });
</script> 

我知道必须有一个合理的方法来做到这一点!我有点担心这似乎很少使用,但它适用于Storm 2,据称可以在更新的平台上运行,所以我现在很满意。

根据规范,您还可以传递lat / long和XLOC标记。我没有测试过。似乎没有任何支持KML,这有点遗憾。

(当然,对于多平台Web开发,您需要添加对黑莓对象的检查等。)