高德地图服务测试点评
高德地图是一款功能齐全,支持离线的常用地图服务。其具备以下特点:
1.高德地图是一款免费使用的跨Android,IOS,WindowsPHONE三大移动平台的地图服务
2.其最新版本的Android库文件AMap_Android_3DMap_Lib_V2.2.0大小为1.77MB,AMap_Android_2DMap_Lib_V2.2.0大小为572KB.
3.高德提供2D,3D离线地图支持
4.特色功能:路径规划,兴趣点搜索,坐标/地址查询,离线地图,团购搜索
5.高德地图官方网站提供SDK包,实例代码,开发指南,参考手册,方便开发者下载以及在线查阅。
6.高德地图版本更新及时,最新版本为:AndroidV2.2.0,IOSV2.2.0
开发建议
1.高德地图使用的是面向接口的框架,其ViewMap类作为核心类,需要重写Activity生命周期的所有方法,这要求开发者具备面向对象多态性,继承性的功底。如果不理解常用的设计模式和架构,对于该平台的掌握会稍微吃力。
2.建议熟悉JAVA,C#,Object-c等面向对象开发者使用,对英文功底要求略高
基本参数:
是否免费 | 免费 |
支持平台 | Android,iOS,WindowsPhone |
支持离线地图导入 | 支持 |
支持卫星模式 | 支持 |
支持公交详情检索 | 支持 |
支持城际实时路况 | 支持全国主要城市实时路况的显示。 |
支持3D矢量地图渲染,支持离线 | 支持 |
支持地图截图 | 支持 |
支持短串分享 | 支持 |
LBS云检索 | 支持 |
支持自定义paopaoview弹出框 | 支持 |
支持公交、驾车、步行路线查询 | 支持 |
支持弧线绘制 | 支持 |
WIFI网络下:
测试环境 | Windows7旗舰版(64x)+Eclipse+I9000 |
测试对象 | 高德地图服务 |
测试手机 | 三星GalaxySI9000 |
系统版本 | 4.2.1 |
手机网络 | WIFI |
测试方法 | 客户端运行地图DEMO+触屏测试API接口 |
测试时间 | 2014-3-2619:02-19:24 |
2G网络下:
测试环境 | Windows7旗舰版(64x)+Eclipse+I9000 |
测试对象 | 高德地图服务 |
测试手机 | 三星GalaxySI9000 |
系统版本 | 4.2.1 |
手机网络 | 2G |
测试方法 | 客户端运行地图DEMO+触屏测试API接口 |
测试时间 | 2014-3-2619:26-19:38 |
一 客户端集成
1.从网站下载并解压得到地图显示包“Android_Map_V2.x.x.jar”、搜索包“Android_Services_V2.x.x.jar”和文件夹“armeabi”(含libamapv3.so和libmapv3ex.so文件)。
2.开发工程中新建“libs”文件夹,将地图显示包、搜索包和“armeabi”拷贝到libs的根目录下。拷贝完成后的工程目录(以V2.1.0为例)如图所示:
3.添加用户Key。在工程的“AndroidManifest.xml”文件如下代码中添加您的用户Key。
1.<application
2.android:icon="@drawable/icon"
3.android:label="@string/app_name">
4.<meta-data
5.android:name="com.amap.api.v2.apikey"
6.android:value="请输入您的用户Key"/>
7.
8.<activityandroid:name="com.amap.demo.LocationManager">
9.<intent-filter>
10.<actionandroid:name="android.intent.action.MAIN"/>
11.<categoryandroid:name="android.intent.category.LAUNCHER"/>
12.</intent-filter>
13.</activity>
14.</application>
4.添加权限。在工程的“AndroidManifest.xml”文件中进行添加,请直接拷贝。
1.<uses-permissionandroid:name="android.permission.INTERNET"/>
2.<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
3.<uses-permissionandroid:name="android.permission.ACCESS_COARSE_LOCATION"/>
4.<uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>
5.<uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION"/>
6.<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
7.<uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"/>
8.<uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>
9.<uses-permissionandroid:name="android.permission.CHANGE_CONFIGURATION"/>
二 测试截图
三 遇到的问题
1.注意:由于adt插件升级,若您使用Eclipseadt22的话,需要对开发环境进行相应的设置,方法如下:
在Eclipse中选中工程,右键选Properties->JavaBuildPath->OrderandExport使AndroidPrivateLibraries处于勾选状态Project->clean->cleanall.
四 上手难易
高德地图使用难度中等,尤其要注意,使用MapView类时,要重写Activity生命周期的所有方法。熟练掌握面向接口开发的人来,可以边查阅文档边开发。
五 花费时间
对于熟悉面向对象开发和基于配置的编程模型的开发者而言,大约需要一个小时即可完成集成到客户端。
六 开发支持和文档
高德地图服务提供Android,IOS,WindowsPhone三个平台的SDK,在线文档,学习指南等,如图说示:
测试日志截图如下:
测试DEMO 1
<?xmlversion="1.0"encoding="utf-8"?> <manifestxmlns:android="http://schemas.android.com/apk/res/android" package="com.amapv2.apis" android:versionCode="1" android:versionName="1.0"> <uses-sdkandroid:minSdkVersion="8"/> <uses-permissionandroid:name="android.permission.INTERNET"/> <uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permissionandroid:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/> <uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/> <uses-permissionandroid:name="android.permission.CHANGE_CONFIGURATION"/> <application android:icon="@drawable/ic_launcher" android:label="@string/demo_title"> <meta-data android:name="com.amap.api.v2.apikey" android:value="525a55dc9fcd38366a3fae2faf37c24d"/> <!-- 在android4.0以上系统中的Activity加上下面这句,可以支持地图横竖屏切换 android:configChanges="orientation|keyboardHidden|screenSize" 例如: <activity android:name=".basic.BasicMapActivity" android:label="@string/basic_map" android:configChanges="orientation|keyboardHidden|screenSize"/> --> <activityandroid:name=".MainActivity"> <intent-filter> <actionandroid:name="android.intent.action.MAIN"/> <categoryandroid:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> <activity android:name=".basic.BasicMapActivity" android:label="@string/basic_map" android:screenOrientation="portrait"/> <activity android:name=".basic.CameraActivity" android:label="@string/camera_demo" android:screenOrientation="portrait"/> <activity android:name=".basic.EventsActivity" android:label="@string/events_demo" android:screenOrientation="portrait"/> <activity android:name=".basic.LayersActivity" android:label="@string/layers_demo" android:screenOrientation="portrait"/> <activity android:name=".basic.MapOptionActivity" android:label="@string/mapOption_demo" android:screenOrientation="portrait"/> <activity android:name=".basic.ScreenShotActivity" android:label="@string/screenshot_demo" android:screenOrientation="portrait"/> <activity android:name=".basic.OpenglActivity" android:label="@string/opengl_demo" android:screenOrientation="portrait"/> <activity android:name=".basic.UiSettingsActivity" android:label="@string/uisettings_demo" android:screenOrientation="portrait"/> <activity android:name=".overlay.MarkerActivity" android:label="@string/marker_demo" android:screenOrientation="portrait"/> <activity android:name=".overlay.PolylineActivity" android:label="@string/polyline_demo" android:screenOrientation="portrait"/> <activity android:name=".overlay.GroundOverlayActivity" android:label="@string/groundoverlay_demo" android:screenOrientation="portrait"/> <activity android:name=".overlay.TileOverlayActivity" android:label="@string/tileoverlay_demo" android:screenOrientation="portrait"/> <activity android:name=".overlay.PolygonActivity" android:label="@string/polygon_demo" android:screenOrientation="portrait"/> <activity android:name=".overlay.CircleActivity" android:label="@string/circle_demo" android:screenOrientation="portrait"/> <activity android:name=".location.LocationSourceActivity" android:label="@string/locationsource_demo" android:screenOrientation="portrait"/> <activity android:name=".location.LocationGPSActivity" android:label="@string/locationGPS_demo" android:screenOrientation="portrait"/> <activity android:name=".location.LocationNetworkActivity" android:label="@string/locationNetwork_demo" android:screenOrientation="portrait"/> <activity android:name=".geocoder.GeocoderActivity" android:label="@string/geocoder_demo" android:screenOrientation="portrait"/> <activity android:name=".route.RouteActivity" android:label="@string/route_demo" android:screenOrientation="portrait"/> <activity android:name=".busline.BuslineActivity" android:label="@string/busline_demo" android:screenOrientation="portrait"/> <activity android:name=".poisearch.PoiKeywordSearchActivity" android:label="@string/poikeywordsearch_demo"/> <activity android:name=".poisearch.PoiAroundSearchActivity" android:label="@string/poiaroundsearch_demo"/> <activity android:name=".offlinemap.OfflineMapActivity" android:label="@string/offlinemap_demo" android:screenOrientation="portrait"/> </application> </manifest> |
基本地图功能
图层展示(普通地图\卫星地图)
实时交通
地位\导航
路径规划\公交查询\地理编码
离线地图:
更多测试报告可以查询:www.devstore.cn 进行浏览。
更多相关文章
- tcping测试服务器TCP端口
- Android(安卓)学习之- 单选按钮、复选框、状态开关、时钟控件
- Android开发指南(43) —— Location and Maps
- Android高德地图SDK的使用
- android 自动化测试 monkeyrunner
- Ubuntu下Android(安卓)JNI初步学习之——搭建相关环境和测试Demo
- Android(安卓)单元测试大概步骤
- centos编译安装ffmpeg支持AMR
- [Android]通过JNI访问并操作Bitmap的元素,支持RGB565和ARGB8888