- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
嘿,我试图在我的应用程序中实现这些代码,但它不起作用,我不知道我哪里出错了。
基本上,当我启动设备位置示例时。它没有显示我当前所在的位置,也没有看到任何与我当前所在位置相似的蓝点。
我唯一看到的就是 map 。只是一个普通的缩小 map 。
如果有人可以帮助我了解如何使用 map 上显示的蓝点获取当前位置,我将非常感激。
这是我的 MainActivity.class
public class HelloWorld extends Activity {
MapView mMapView = null;
ArcGISTiledMapServiceLayer tileLayer;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Retrieve the map and initial extent from XML layout
mMapView = (MapView) findViewById(R.id.map);
mMapView.addLayer(new ArcGISTiledMapServiceLayer(
"http://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"));
mMapView.setOnStatusChangedListener(new OnStatusChangedListener() {
public void onStatusChanged(Object source, STATUS status) {
if (source == mMapView && status == STATUS.INITIALIZED) {
LocationService ls = mMapView.getLocationService();
ls.setAutoPan(false);
ls.start();
}
}
});
}
protected void onPause() {
super.onPause();
mMapView.pause();
}
@Override
protected void onResume() {
super.onResume();
mMapView.unpause();
}
}
最佳答案
这是一个代码,每 1 秒通过提供商和 GPS 绘制我的位置。让我们先声明变量:
private GraphicsLayer myGraphicalLayer;
MapView mMapView;
ArcGISLocalTiledLayer baseLayer;
private LocationManager mlocManager;
private LocationListener mlocListener;
在 onCreate 函数中我们调用 LocationListener:
mlocManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
mlocListener = new MyLocationListener();
mlocManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 0, mlocListener);
mlocManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 1000, 0, mlocListener);
// loading the map
mMapView = (MapView) findViewById(R.id.localMap);
baseLayer = new ArcGISLocalTiledLayer(basemapurl);
mMapView.addLayer(baseLayer);
// defining my position layer
myGraphicalLayer = new GraphicsLayer();
然后是绘制我的位置的函数:
private void SetMyLocationPoint(final double x, final double y) {
PictureMarkerSymbol myPin = new PictureMarkerSymbol(getResources().getDrawable(
R.drawable.mylocation_icon));
Point wgspoint = new Point(x, y);
Point mapPoint = (Point) GeometryEngine.project(wgspoint, SpatialReference.create(4326),
mMapView.getSpatialReference());
Graphic myPinGraphic = new Graphic(mapPoint, myPin);
try {
myGraphicalLayer.removeAll();
} catch (Exception e) {
e.printStackTrace();
}
myGraphicalLayer.addGraphic(myPinGraphic);
myGraphicalLayer.setVisible(true);
mMapView.addLayer(myGraphicalLayer);
}
创建实现 MyLocationListener 的内部类来获取即时位置,并让它像这样调用名为 SetMyLocationPoint 的函数:
public class MyLocationListener implements LocationListener {
@Override
public void onLocationChanged(Location loc) {
SetMyLocationPoint(loc.getLongitude(), loc.getLatitude());
}
@Override
public void onProviderDisabled(String provider) {
Toast.makeText(getApplicationContext(), "provider enabled", Toast.LENGTH_SHORT)
.show();
}
@Override
public void onProviderEnabled(String provider) {
Toast.makeText(getApplicationContext(), "provider disabled", Toast.LENGTH_SHORT)
.show();
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
}
关于android - Arcgis : how to get device location,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20062552/
我有两个 shapefile。一种是有交通量数据的街道 map ,另一种是没有交通量的详细街道 map (精确 map )。 当我将带有交通量数据的街道 map 与没有交通量的详细街道 map 进行比
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 9年前关闭。 Improve this q
我注意到 Arc Gis map 渲染速度非常慢。当你缩放时,它呈现得很慢。当您平移时,它呈现缓慢。有没有人有任何关于使 map 呈现速度更快的建议,类似于谷歌地图和微软虚拟地球。 最佳答案 动态 m
我有几个带有大约 100-150 个特征的压缩 shapefile。我正在尝试将它们添加到 ArcGIS Online(每个 shapefile 接受少于 1000 个要素)但无法这样做,这表明压缩的
我正在尝试使用 react-arcgis npm 向 arcgis 添加一个图层, esriPromise(["esri/layers/TileLayer"]).then(([ TileLayer ]
我正在使用 javascript 在 web map 上显示要素图层的标签和要素。要素图层成功在 arcgis 工具中显示标签,而不是在 web map 上显示标签。 谁能帮我解决这个问题吗?我正在尝
我有从驻留在目录托管服务器中的 ArcGIS 生成的形状文件列表,请注意该服务器不是 ArcGIS 服务器并且形状文件未发布。 是否可以使用 ArcGIS JS API 将此形状文件作为图层(要素图层
去年的某个时候,当我们使用 ArcGIS 9.3 时,我在 Visual Studio 2008 中编写了一个 C# 程序来遍历文件夹中的所有 MXD 文件,检查所有图层源,如果错误或不正确则替换它们
是否可以指定 ESRI basemap 图库 (esri/dijit/BasemapGallery) 使用哪些 ArcGIS basemap ? 将 showArcGISBasemaps 设置为 tr
我是 Eclipse 的新手。我打算创建一个 ArcGIS Android 应用程序,但目前我正在逐步学习它。我有一个问题,“ArcGIS Runtime SDK for Android”和“ArcG
如何在启用混淆器的情况下使用 com.esri.arcgis.android:arcgis-android:10.2.6-2?我在努力 -keep class com.esri.** { *; } -
我遵循this guide将ArcGIS map 添加到我的应用程序中,但是没有用。我收到以下错误: Error: Failed to resolve: com.esri.arcgis.android
我正在尝试开发我自己的 map 服务,然后将我生成的图像显示到 ARCGIS map 查看器中......无论如何,我的 *.ashx 服务读取 ARCGIS Tile URL 看起来像“http:/
我在一个多边形 shapefile 中有一个不规则的三角形网格。这些单元格的主题是仅显示高于我的“兴趣”阈值水平的三角形。可见的相邻三角形被认为是真实的。需要删除空间隔离的三角形,因为它们可能是虚假的
我被困住了,试图使用 ArcGIS 绘制一个简单的圆形缓冲区。以下是我设置 basemap 的方法: dojo.require("esri.map"); dojo.require("esri.task
我正在使用 JavaScript 编写一个程序,该程序通过 ArcGIS REST API 连接到本地 ArcGIS 服务器并加载 map 。 获取服务的 URL 是 let xmlhttp = ne
我想开发 Arcgis for android 和 web 服务,但我不知道它有 API 吗?如果有,是否可以在我服务器上收集的经纬度 map 上进行标记(如谷歌地图 API)? 谢谢卡:)) 最佳答
我刚刚偶然发现了 Backgroundworker 对象,它似乎是我正在寻找的工具,可以让我的 GUI 在执行计算时做出响应。我正在为 ArcGIS 编写 IO 插件。 我正在 ArcGIS 之外进行
我正在尝试使用 ArcGIS JavaScript API在 Angular 应用程序中。如我所见,它使用 Dojo。所以,我正在尝试从 Angular 指令初始化 ArcGIS,如下所示: li
在 Microsoft SQL 中,我可以使用 GETDATE() 函数作为 DATETIME 字段的默认值。我希望能够对 ArcGIS 地理数据库中的日期字段执行相同类型的操作。这可能吗,还是我仅限
我是一名优秀的程序员,十分优秀!