osmdroid的用户代理
我尝试放置用户代理(cf https://github.com/osmdroid/osmdroid/wiki/wiki/important-notes-on-son-using-osmdroid-in-your-app )告诉我setUseragentValue被折旧. 我该怎么办?现在,当我运行该应用时,我有一个没有地图的网格. 非常感谢您! 解决方案 它被弃用了,因为它已移至另一个位置,该位置巩固了osmdroid的所有配置设置.尝试以下 Configuration.getInstance().setUserAgentValue(...) 重写了较旧的方法将其连接到新的配置结构中.
0 2024-02-18
编程技术问答社区
开放式街道地图(osmdroid)在PC中显示灰色的瓷砖而不是地图
我正在使用osmdroid在我的应用中获取开放的街道地图.我用所需的罐子(osmdroid)构建了项目,并在清单中添加了所有必需的权限.但是,当我尝试在Android模拟器(Adt Eclipse)中调试我的应用程序时,我将看不到地图,只有灰色瓷砖. 我的项目工作正常,因为如果我在智能手机中调试我可以看到地图,问题只有模拟器. 我做了一些研究,但我只找到了Google Maps解决方案的信息,但没有开放街道地图(Osmdroid). 有人知道如何解决这个问题吗? 这就是我在xml文件中显示地图的方式
2 2024-02-16
编程技术问答社区
安卓自定义控件显示地图瓦片
我在我的服务器映射图块上都在文件夹结构上排序,例如OpenStreetMap(OSM)使用.我需要能够显示这些瓷砖,放大/输出,平底锅并旋转地图.我不会从头开始创建一个新的控件.我看过osmdroid,但我没有找到一种设置自己的非矢量瓷砖源的方法. 我对任何建议开放. 解决方案 我首先尝试查看他们的源代码以了解他们的做法. 这是 link 他们的源代码.更确切地说,我认为 this 是您要寻找的文件.
0 2024-02-16
编程技术问答社区
开放式街景地图在安卓系统下工作
我是开放街头地图的新手.我进行了一些研究,发现我们可以将地图下载并存储到文件夹中.但是我没有找到任何提供离线开放式街道地图的教程或样本.有人可以提供一个逐步的教程,这是实施离线开放式街道地图的指南.我正在遵循此示例 http://.blogspot.com/2012/06/示例 - opentreetmap.html ,但是现在我想在没有连接时将其提供. 解决方案 喜欢在您提到的教程中,您可以使用osmdroid库: https://code.google.com/p/osmdroid/ 有一个很好的解释,说明osmdroid如何与离线地图一起工作: https://stackoverflow.com/a/a/8286276/891479 在您的应用中使用maptileproviderbasic. 这里有一些示例: 要以osmdroid格式生成离线地图,请使用移动图集创建者: http://mobac.sourceforge.net/ 您可以选择地图和输出格式的来源
0 2024-02-16
编程技术问答社区
用安卓谷歌地图Api v2打开街道地图
是否可以在Android上使用新的Google Maps V2 API使用开放式街道地图提供商?如果是这样,您可以提供一个示例或文档吗?我很快就看了查看文档,发现 urltiltileprovider"> urlfitereprovider() ,看起来这可能是可能的. 奖金:仅将MAPFragment类与OSM图块的使用仍然受Google Maps Tos的限制? 解决方案 您需要扩展urltileprovider类,以便定义OSM瓷砖地图的URL并添加这样的瓷砖覆盖: MyUrlTileProvider mTileProvider = new MyUrlTileProvider(256, 256, mUrl); mMap.addTileOverlay(new TileOverlayOptions().tileProvider(mTileProvider)); 使用这样定义的OSM的URL: String mUrl = "http://a.tile.ope
Osmdroid和Marshmallow
我在android 6.0中使用osmdroid 5.2 lib.我在问WRITE_EXTERNAL_STORAGE and ACCESS_COARSE / FINE_LOCATION permissions on realtime. ,但地图不起作用: Unable to decode stream: java.io.FileNotFoundException: /storage/emulated/0/osmdroid/tiles/Mapnik/14/10079/5358.png.tile: open failed: EACCES (Permission denied) 地图仅在第二次运行应用程序中起作用. 谁能帮我?预先感谢. 解决方案 您必须在加载和显示MapView之前要求获得权限. 要么只读取路径.在某些Android设备上Environment.getExternalStorageDir返回仅读取分区.不知道为什么,但这肯定会引起问题.可以用类Op
0 2024-02-12
编程技术问答社区
如何在osmdroid中使用map.osm xml文件而不是默认的在线地图
我已经从客户那里收到了一个自定义的OSM文件(map.osm)来集成Android项目,但是我不知道如何使用该文件,通常我正在使用 mapView.setTileSource(TileSourceFactory.MAPNIK); 所以,我如何使用map.osm文件我的android项目. 解决方案 对不起,但是Afaik不能那样工作.瓷砖为地理图是一张渲染的栅格图.因此,您需要首先在本地渲染器中渲染数据,例如 maperiative 或" http://wiki.openstreetmap.org/wiki/tilemill" rel =" nofollow"> tilemill .他们可以创建一个瓷砖文件夹结构输出,可以由osmdroid而不是官方瓷砖来源使用: http://code.google.com/p/osmdroid/wiki/howtousepackager
2 2024-02-11
编程技术问答社区
加载瓦片来源
我正在尝试加载一个瓷砖源,但由于某种原因,它从事工作. 这是我的代码: final IRegisterReceiver registerReceiver = new SimpleRegisterReceiver(this); // Create a custom tile source final ITileSource tileSource = TileSourceFactory.MAPNIK; // Create a file cache modular provider final TileWriter tileWriter = new TileWriter(); final MapTileFilesystemProvider fileSystemProvider = new MapTileFilesystemProvider(registerReceiver, tileSource); File myMapTil
2 2024-02-11
编程技术问答社区
是否可以用OSMBonusPack获得限速数据?
我一直在尝试开发速度限制应用程序,并尝试了许多不同的方法来完成. 我已经使用了立交桥API,它做得很好,但是对于欧洲各地的几个位置以及使用OSM MAP和此处地图API的安装了速度限制信息,它们仍然无法获取数据.这是Velociraptor App的屏幕截图:屏幕截图图像. 昨天我遇到了Osmbonuspack,它看起来很有希望,因为它允许我们从可用的3种最佳路由服务中进行选择.因此,在进行实施之前,我认为获取是否可以从该项目获得速度限制的建议可能很有用. 任何建议都将不胜感激. 解决方案 不幸的是,3个路由服务没有返回速度限制信息. 选项: 直接与他们联系以说服他们增加速度限制 分叉开源一个(OSRM?),并实现自己 返回覆盖速度或速效
0 2024-02-11
编程技术问答社区
OSMDroid中的离线路线和导航,我怎么才能得到这个功能?
我正在使用OSM开发Android应用,该应用支持离线路由和导航. 我想在Android应用程序中集成OSM中的离线路由和导航.有很多路由软件,我很困惑哪个更好.任何人都可以比较路由和导航不同路由提供商的功能吗? 解决方案 您可以在此处找到路由服务的比较: https://github.com/mkergall/osmbonuspack/wiki/wheRoutingService 但是,如果您想离线路由,GraphHopper将是您唯一的解决方案.
0 2024-02-09
编程技术问答社区
行人的Graphhopper路线 android
如何将路由类型设置为GraphHopper Android中的行人? 我一直在Android中使用ghrequest.setVehicle()方法,但它不起作用. 我尝试使用"脚"和"自行车".没有工作.另外,当我更改算法时,它也不起作用.只有Dijkstra_bi现在正在工作. GHRequest req = new GHRequest(fromLat, fromLon, toLat, toLon). setAlgorithm(Algorithms.DIJKSTRA_BI).setVehicle("foot"); 预先感谢. 我包含以下文件的地图数据. 我使用 时会遇到以下错误 tmpHopp.setEncodingManager(new EncodingManager("foot")); 我解决了这个问题,感谢Karussell.我会为像我这样的人写下我所做的事情,他们可能会面临同样的问题. 我做了什么
2 2024-02-09
编程技术问答社区
如何在我的OSM应用程序上显示路线
在日志中 02-19 14:41:29.151 10336-10336/com.example.app E/BONUSPACK﹕ OSRMRoadManager::getRoad: request failed. 02-19 14:41:29.151 10336-10336/com.example.app I/System.out﹕ 2 我有route.gpx文件,但我不知道如何使用 GeoPoint startPoint = new GeoPoint(48.13, -1.63); mapView = (MapView) findViewById(R.id.mapview); mapCTRL = (MapController) mapView.getController(); mapCTRL.setZoom(13); mapView.setBuiltInZoomControls(true); mapCTRL.set
0 2024-02-09
编程技术问答社区
OSMDroid在跟随教程时出现的路由问题
我使用以下代码将路由覆盖层放在OSM Droid地图上,使用从以下教程中获得的代码( http://code.google.com/p/osmbonuspack/wiki/wiki/tutorial_1 ),但略微调整了一种自定义方法,而不是在爆发方法中使用. 现在,这确实路线并在地图上产生绿色覆盖层.但是,从for循环开始出现一个问题.这是因为道路.mnodes始终是零尺寸,表明没有说明下降. 事实,我还检查了路障和道路数量,并且都尺寸为零.这意味着气泡(ExtendedOverLayitems)从未在路线上显示. 任何建议都将不胜感激. //====================================================================================================== /** * Add a route overlay between two geopoints with Bubb
2 2024-02-08
编程技术问答社区
OSM-用自定义图标显示当前位置
谁能告诉我如何使用自定义图标在OSM地图上显示我当前的位置? 解决方案 带有默认人员图标: MyLocationNewOverlay myLocationoverlay = new MyLocationNewOverlay(mapView); myLocationoverlay.enableFollowLocation(); myLocationoverlay.enableMyLocation(); mapView.getOverlays().add(myLocationoverlay); 使用自定义图标: MyLocationNewOverlay myLocationoverlay = new MyLocationNewOverlay(mapView); myLocationoverlay.enableFollowLocation(); Drawable currentDraw = ResourcesCompat.getDrawable(getResources
2 2024-02-06
编程技术问答社区
MapController setCenter不工作
我有一个GeoPoint gPt,具有55.790833,49.114444坐标.我将其添加到映射并尝试中心.但是我的标记不在地图的中心(稍高一点). 怎么了? 这是我的代码: mResourceProxy = new ResourceProxyImpl(this.getActivity().getApplicationContext()); mapView = (MapView) v.findViewById(R.id.mapview); mapView.setTileSource(TileSourceFactory.MAPNIK); mapView.setBuiltInZoomControls(true); mMapController = mapView.getController(); mMapController.setZoom(15); GeoPoint gPt
0 2024-02-06
编程技术问答社区
安卓OSM缩放级别19及以上
我是Android开发的新手.我有一个显示MapView的应用程序,并且我设置了一个边界框来限制用户仅在特定区域中查看瓷砖.我遇到的问题是我需要放大,过去的18级.我也能够通过设置最大缩放级别来做到这一点.但是,缩放19及以上的默认瓷砖提供商没有任何瓷砖可用,我实际上也只需要20,21最大. 我有办法创建自己的瓷砖吗?有自定义瓷砖?生成我自己的地图?或者,如果有一个瓷砖提供商使我可以放大了第18级的地图,并且仍然能够看到地图图块? 我需要更高的缩放级别,因为我正在覆盖自定义标记,如果它不够放大,标记物重叠.如果我缩放标记尺寸,则不够可见... 编辑:我在初始帖子上错过了其他一些具体细节, 我正在使用OpenStreetMap,因为我需要它提供的功能,可以在其中编辑道路并相应地将其标记以供将来的路由使用. 此外,由于最近的施工和翻新,Google Maps为我选择的地理区域提供的瓷砖已过时.这使得地图对路由应用程序用户不可靠. 该应用程序的目的是路由用户
2 2024-02-06
编程技术问答社区
越过API的安卓实例?
进行研究,我们必须开发基于位置的Android游戏.目前,我们使用osmdroid显示地图.玩家必须收集的资源(例如木材,石头等).这些资源目前以硬编码的长/lat存储在我们的后端中,并将用setmarker添加到当前地图中. 为了在全球提供此游戏,我们希望根据"真实"世界动态设置资源.因此,我们需要从OSM(例如森林,海,..)的不同层次来自动设置我们的资源而无需询问我们的后端. 在与Google进行了几个小时的搜索之后,我发现立交桥API似乎可以帮助我实施此功能.但是我找不到在Android中使用立交桥API的任何教程.我尝试了一些事情,但我不明白...所以我需要您的帮助,请给我一个示例或解释如何实施:/ 这是我当前的代码,但我认为这是不正确的. URL url = new URL("http://overpass-api.de/api/interpreter"); HttpURLConnection urlConnection = (HttpURLConnection)
4 2024-02-06
编程技术问答社区
禁用Osmdroid地图中的滚动功能
我有一个 osmdroid mapview.即使我已经设置 mapView.setClickable(false); mapView.setFocusable(false); 地图仍然可以四处移动.是否有一种简单的方法可以禁用与地图视图的所有交互? 解决方案 我找到了一个解决方案.您需要通过设置OnTouchListener直接处理触摸事件.例如, public class MapViewLayout extends RelativeLayout { private MapView mapView; /** * @see #setDetachedMode(boolean) */ private boolean detachedMode; // implement initialization of your layout... private void setUpMapView() {
6 2024-02-05
编程技术问答社区
安卓系统在openstreetmap上绘制路线
我正在寻找一种在我的Android应用中绘制openstreetmap的路线路径的方法. 我只有起点和终点,但是不需要直线. 关于我该怎么做的任何想法? 解决方案 用于获取路线,您可以使用各种在线路由器用于OSM .他们中的许多人提供了您可以在应用程序中显示的计算路线的GPX导出. 其他解决方案 您是否查看了开放式街道地图Wiki,包括旅行推销员示例: http://wiki.openstreetmmap.org/wiki/wiki/traveling_salesman
2 2024-02-05
编程技术问答社区
如何处理在地图上的长按,在安卓系统中使用 OSMDroid / OSMBonusPack?
我正在尝试在Android上创建一个带有地图的简单应用程序.我正在使用osmdroid的MapView渲染基本的openstreet map mapview. 我有一个实现MapEventsReceiver接口的自定义MapActivity(来自osmbonuspack).在我的活动的onCreate()中,我创建了MapEventsOverlay,将其添加到mapView. 问题是,longPressHelper()和singleTapUpHelper()从未被调用.请参阅下面的代码. public abstract class CustomMap extends BaseActivity implements MapEventsReceiver{ //variable declarations follow private MapView mMapView; @Override protected void onCreate(Bundle icicle) { su
2 2024-02-05
编程技术问答社区