这里提供一个比较完整的引路蜂地图Android应用源码下载,基本涵盖了引路蜂地图API的所有功能,包括离线地图,路径查询,地址查询,地图模式选择等。
设备上在Galaxy Nexus 和 Nexus S ,Nexus 7 Tablet 测试通过,可以做为你学习或开发引路蜂地图应用的参考。
应用缺省读取所有存放在SD卡guidebee 目录下所有 .map 文件,代码如下:
MapTileStreamReader streamReader = SharedMapInstance.mapTileDownloadManager .getInteralMapTileStreamReader(); SharedMapInstance.worldMapFileStream = getResources() .openRawResource(R.raw.world); MapTiledZone worldmapZone = new MapTiledZone(new DataInputStream( SharedMapInstance.worldMapFileStream)); streamReader.addZone(worldmapZone); try { File sdcardDir = Environment.getExternalStorageDirectory(); File guidebeeDir = new File(sdcardDir, "guidebee"); if (guidebeeDir.exists()) { FilenameFilter filter = new FilenameFilter() { public boolean accept(File dir, String filename) { if (filename.endsWith(".map")) { return true; } return false; } }; String[] allMapfiles = guidebeeDir.list(filter); String path = guidebeeDir.getAbsolutePath(); if (allMapfiles != null) { for (int i = 0; i < allMapfiles.length; i++) { FileMapTiledZone mapTileZone = new FileMapTiledZone( path + File.separator + allMapfiles[i], false); Log.p(allMapfiles[i]); streamReader.addZone(mapTileZone); } } } } catch (Exception e) { }finally{ streamReader.open(); } } catch (Exception e) { }
你也可以根据你自己的需求放在其它目录下,记得要更改代码中对应的路径。
地图上会随机显示“Guidebee” 水印。正式版去除水印,关于正式版可以参见版本说明。
离线地图下载可以参见 离线地图工具 和离线地图下载 ,你可以通过离线地图工具自己制作离线地图,或是从本网站下载。
软件采用RoboGuice ,关于RoboGuice可以参见
Android RoboGuice 使用指南