网络应用程序-在BlackBerry OS 5+上从浏览器打开BBMaps



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

在BBOS 4.5中添加了对这一点的支持,据称在版本6中一直存在。黑莓论坛上有一条关于它的老帖子;该线程中的一个示例网站在Storm 2上不工作,而另一个应用程序已关闭。

根据文件,据称BBOS5同时支持KML和专有的BlackBerry位置标记语言XLOC。

我认为至少XLOC可以工作,因为据称版本6保留了对XLOC的支持,并放弃了对KML的支持。但是没有。

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

我认为文件是错误的。我所能做的一切都不起作用——KML、KMZ、XLOC、动态生成、具有适当MIME类型的静态文件等等。这真的不应该这么难!

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

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

如果有人能拿出一个这样做的例子(特别是黑莓风暴2),我将不胜感激。如果有人能证实这是不可能的,那也是有价值的。

所以!答案在于无视所有这些,并使用BlackBerry Javascript API。只需根据规范将地址创建为json对象,然后调用blackberrylaunch.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开发,您需要添加对blackberry对象等的检查。)

最新更新