原文:WP8关于对地图开发的改进

微软在2012年6月21日 发布了 Windows Phone 8的更新。带来大量的功能更新和全新的SDK。作为重头戏的部分是引入了 C++ 和 DirectX,支持native code。 这样使得众多C++ 和DirectX 现有代码库可以直接移植到Windows Phone 8 上。

强大的DirectX

我们在新版“高德地图 Windows Phone 8 SDK”使用了DirectX。DirectX给我们地图SDK带来了巨大的改进。对比之前的 Windows Phone 7 栅格版地图,带来了以下改进:

1. 更方便:DirectX 可以使用托管的方式和XAML交互,使得地图可以以一个控件的形式出现。这样便于第三方开发者使用。

2. 更流畅:由于WP8(Windows Phone 8,以下统称)的硬件规格的升级,使用DirectX 可以提供更高的绘制帧数。从而使得地图在运行的过程中显得更加流畅。能给用户提供更加优秀的体验。

3. 更灵活:DirectX 是3D的引擎,因此可以为提供之前栅格地图不能提供的3D效果。实现地图3D话。同时支持旋转角度,更改仰角,让地图“活”起来。如下图

图1. Windows Phone 8 高德地图SDK

4. 更真实:在一定zoom(地图的层级)级别以下,便会出现楼块信息。真实体现了现实情况。如下图

图2. 高德地图Windows Phone 8 版本

易于使用的多线程

与此同时,微软给C++带来了task。task 是用于异步操作的一个类。在地图中我们使用的最多的场景便是异步读取hlsl文件,来完成DirectX 的绘制准备工作。由于读取文件下载等耗时的操作都通过异步来完成,则可以不用让主线程等待其完成,从而达到加快进入地图页面的效果。

图3. 简单的单线程演示

图4. 简单的多线程演示

同内核带来的高代码复用率

微软在带来C++的同时也更新了 Windows Phone 8的内核。使得Windows 8和Windows Phone 8 都为NT内核。这也为代码的复用提供了便利。例如高德地图的街景引擎(如下图)

图5 Windows Phone 8 高德地图 街景

图6. Windows 8高德地图 街景

在街景的开发过程中Windows 8平台上复用了Windows Phone 8的巨大部分代码。稍加修改对C#层的接口便可正常运行。(ps. 在未来的 WP8.1后,Windows Phone 8.1 可以复用几乎所有的 Windows 8.1 的代码)。

简单,便捷的代码复用,为后续的地图移植工作提供很大的帮助。

其他功能

在Windows Phone 8中,微软加入了 SD卡的支持,这方便了我们把地图的离线地图存在SD卡中。不仅方便用户管理(可自行操作SD卡删除地图),还能节省手机本身的存储空间。目前只有Nokia地图的离线数据可以存储在SD卡上。

语音输入作为信息录入的辅助功能,能够为部分使用场景(例如行车导航中语音搜索)提供强大的帮助。在Windows Phone 8中,微软为中文提供了语音识别的功能,增强了中文环境下的地图体验。

据泄露的WP8.1 SDK,新增了地理围栏(Geofence)API,这一API在Win8上已经有了,扩大了基于位置服务应用场景,对LBS类应用有非常大的帮助。

Windows Phone 8.1的发布将更有利于我们地图的开发。

高德地图API for Windows Phone SDK :http://api.amap.com/wp8/index

WP8关于对地图开发的改进的更多相关文章

  1. WP8中的地图和导航

    原文 WP8中的地图和导航 代码示例 源文件: Media:MapSample.zip 测试基于 SDK: Windows Phone SDK 8.0 兼容于 平台: Windows Phone 8 ...

  2. iOS原生地图开发指南续——大头针与自定义标注

    iOS原生地图开发指南续——大头针与自定义标注 出自:http://www.sxt.cn/info-6042-u-7372.html 在上一篇博客中http://my.oschina.net/u/23 ...

  3. iOS原生地图开发详解

    在上一篇博客中:http://my.oschina.net/u/2340880/blog/414760.对iOS中的定位服务进行了详细的介绍与参数说明,在开发中,地位服务往往与地图框架结合使用,这篇博 ...

  4. iOS原生地图开发进阶——使用导航和附近兴趣点检索

    iOS原生地图开发进阶——使用导航和附近兴趣点检索 iOS中的mapKit框架对国际化的支持非常出色.在前些篇博客中,对这个地图框架的基础用法和标注与覆盖物的添加进行了详细的介绍,这篇博客将介绍两个更 ...

  5. 在WP8上搭建cocos2d-x开发环境

    在WP8上搭建cocos2d-x开发环境 转自:https://github.com/koowolf/cocos-docs/blob/master/manual/framework/native/in ...

  6. android百度地图开发之自动定位所在位置与固定位置进行驾车,步行,公交路线搜索

    最近跟着百度地图API学地图开发,先是学了路径搜索,对于已知坐标的两点进行驾车.公交.步行三种路径的搜索(公交路径运行没效果,待学习中),后来又 学了定位功能,能够获取到自己所在位置的经纬度,但当将两 ...

  7. Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图

      标签: Android百度地图API Key  分类: Android 百度地图开发(2)    最近自己想研究下地图,本来想研究google Map,但是申请API key比较坑爹,于是从百度地 ...

  8. Android 百度地图开发之一(Hello BaiDu Map)

    之前也接触过百度地图的开发,但那是在网上找的案例或代码,而且是比较老的版本.打算重新学习一下百度地图的开发. 本次使用的百度地图的版本是 Android SDK v3.0.0 本篇文章主要讲述百度地图 ...

  9. GeoServer地图开发解决方案

    转自:http://www.cnblogs.com/beniao/archive/2011/01/08/1930822.html GeoServer 是 OpenGIS Web 服务器规范的 J2EE ...

随机推荐

  1. 静默安装MSSQL

    原文地址:http://www.cnblogs.com/lyhabc/p/3511788.html 介绍 假如你有50台服务器需要安装SQLSERVER,如果你用下一步下一步的方式,用远程桌面不停切换 ...

  2. Jndi使用好处,与简单实例【Tomcat】

    JNDI学习总结(一)——JNDI数据源的配置 一.数据源的由来 在Java开发中,使用JDBC操作数据库的四个步骤如下:   ①加载数据库驱动程序(Class.forName("数据库驱动 ...

  3. Jndi使用好处,与简单实例【JBOSS】

    JNDI是 Java 命名与目录接口(Java Naming and Directory Interface),在J2EE规范中是重要的规范之一,不少专家认为,没有透彻理解JNDI的意义和作用,就没有 ...

  4. iScreenLocker 3.1.8 安卓锁屏通知--苹果一样的体验

    *软件介绍: 苹果锁屏通知(iScreenLocker)是一款android上ios风格的锁屏软件.它颠覆安智通知设计,将原来状态栏的通知搬到锁屏界面上来,能够在桌面轻松收发短信,微博,微信等消息.它 ...

  5. android maven eclipse里面新建mavenprojectThe desired archetype does not exist

    这个问题头疼死我了 又一次配置下你看我的教程 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2hlbmFpbmkxMTk=/font/5a6L5L2T/f ...

  6. Beginning Python From Novice to Professional (4) - 演示样本格式字符串

    $ gedit price.py #!/usr/bin/env python width = input('Please enter width: ') price_width = 10 item_w ...

  7. 《Android内核剖析》读书笔记 第13章 View工作原理【View树遍历】

    View状态分类 在View视图中定义了多种和界面效果相关的状态,比如拥有焦点Focused.按下Pressed等,不同的状态一般会显示不同的界面效果,而且视图状态会随着用户的操作而改变,一般通过xm ...

  8. C# WPF Datagrid的筛选

    public static void SearchResult(DataGrid dg,string condition) { #region string code = string.Empty; ...

  9. 从零開始学习OpenCL开发(一)架构

    多谢大家关注 转载本文请注明:http://blog.csdn.net/leonwei/article/details/8880012 本文将作为我<从零開始做OpenCL开发>系列文章的 ...

  10. 世纪互联、微软Azure与无穷小微积分

              今年9月25日,世纪互联正式开通微软Azure商用服务,有感.          我是世纪互联创业历程的见证人(之中的一个),现在看到世纪互联推出微软Azure公有云的商用服务,心 ...