ArcGIS Runtime SDK for Android

ArcGIS Runtime SDK for Android

ArcGIS Runtime SDK for Android 100.3.0 怎么加载涉密非公开图层!!!!

回复

Runtime SDK李文华 发起了问题 • 1 人关注 • 0 个回复 • 55 次浏览 • 2018-07-12 16:37 • 来自相关话题

有没有类似ArcGIS API for JavaScript 带token加载方式,如下代码:esriId.registerToken({
     token: tokens.token,
     expires: tokens.expires,
     ssl: tokens.ssl,
     server: token.server
});

ArcGIS for android加载动态online图层

Mobilecoolbas 回复了问题 • 2 人关注 • 1 个回复 • 31 次浏览 • 2018-07-10 11:30 • 来自相关话题

请问各位大神,使用ArcGIS for android是否可以加载online上面发布的图层?我现在开发了一个APP,已经有底图,现在想实现从online中在线动态加载一个面状要素。如果不可以,请问有其他的实现方法没?

【Android】ArcGISVectorTiledLayer构造函数VectorTileCache和ItemResourceCache的使用

回复

Runtime SDKminokie 发起了问题 • 1 人关注 • 0 个回复 • 106 次浏览 • 2018-06-28 14:36 • 来自相关话题

ArcGIS Runtime SDK for Android 100.2.1
加载矢量瓦片图层类ArcGISVectorTiledLayer(VectorTileCache vectorTileCache, ItemResourceCache itemResourceCache) 中,参数VectorTileCache 和ItemResourceCache 如何使用?
准备了两个不同样式的VTPK

您好,请问一下arcgis for android100.2.1怎么通过自定义Locationdatasource纠正定位偏差

回复

Runtime SDKEvil genius 发起了问题 • 1 人关注 • 0 个回复 • 86 次浏览 • 2018-06-01 16:11 • 来自相关话题

ArcGIS runtime for Android 如何实现离线路径分析(导航)呢?

Apps勾戈雪黎 回复了问题 • 2 人关注 • 1 个回复 • 130 次浏览 • 2018-05-29 18:02 • 来自相关话题

想问一下有没有什么好的解决方案或者接口调用

ArcGIS Runtime SDK for Android 100.2.1支持读取非UTF-8编码的SHP吗

回复

Runtime SDKls123_zh 发起了问题 • 1 人关注 • 0 个回复 • 133 次浏览 • 2018-05-25 18:23 • 来自相关话题

移动端读取老版本的ArcMap中的SHP文件(非UTF-8编码),中文乱码。SHP转成UTF-8编码之后,在移动端正常显示。但是现在由于一些原因,不能采用UTF-8编码,那么在这个前提下,在移动端存取SHP时能对SHP文件进行正常存取吗。

ArcGIS Runtime SDK for Android 100.2如何获取影像波段数和移除RasterRender

Runtime SDK张赛 回复了问题 • 2 人关注 • 1 个回复 • 195 次浏览 • 2018-04-25 11:21 • 来自相关话题

如题。请问:10.2.x中有获取影像波段数相关方法,100.x中的方法在哪儿?
另外,对影像设置RasterRender之后,如何移除渲染效果。10.2.x设置为null就可以,100.x设置为null出错。

Arcgis for Android 10.2.8 加载有范围的png

Runtime SDK张赛 回复了问题 • 2 人关注 • 1 个回复 • 141 次浏览 • 2018-04-25 09:41 • 来自相关话题

[
{
"cloud1h": "201804090700.png",
"cloud3h": "201804082300.png",
"cloud6h": "201804081800.png",
"c

ArcGIS Runtime SDK for iOS100.2.1版本支持离线spk/slpk三维数据包吗?

Runtime SDK席西 回复了问题 • 2 人关注 • 1 个回复 • 250 次浏览 • 2018-03-23 09:24 • 来自相关话题

ArcGIS Runtime SDK for iOS100.2.1版本支持离线spk/slpk三维数据包吗?
看了官方文件明暗里说有调用离线spk/slpk三维数据包接口,怎么都找不到,还是ESRI考虑市场利润,根本就没开放离线调用3D数据包接口!

ArcGIS Runtime SDK for Android 100.2.1中Query和Identity问题

Runtime SDK张赛 回复了问题 • 2 人关注 • 1 个回复 • 204 次浏览 • 2018-03-12 18:13 • 来自相关话题

MapView.identifyLayersAsync(mClickPoint, TOLERANCE, false, 100);

使用Identity点选查询,点击面内部时无法选中面,只有选中面边线时才能选中面。QueryParameters query = new QueryParameters();
query.setGeometry(point);
final ListenableFutu

ArcGIS Runtime SDK for Android 100.2.x日期类型字段属性无法保存

Runtime SDK张赛 回复了问题 • 2 人关注 • 1 个回复 • 300 次浏览 • 2018-03-12 09:05 • 来自相关话题

代码如下:Feature addedFeature = mFeatureLayerTrack.getFeatureTable().createFeature();
addedFeature.setGeometry(polyline);
//获取要素属性结构
Map<String, Object> attrs = addedFeature.getAttributes();
attrs.p

ArcGIS Runtime for Android 100.2.x 系列——丰富多彩的符号渲染之Mobile Style篇

Runtime SDK张赛 发表了文章 • 1 个评论 • 341 次浏览 • 2018-03-09 00:00 • 来自相关话题

ArcGIS Pro提供了一种新的符号样式Mobile Style,以方便用户在ArcGIS Runtime端自由使用。本篇我们将基于ArcGIS Runtime SDK for Android 100.2.1具体探讨一下Mobile Style在移动端的简单应用。

1 制作Mobile Style

对于Mobile Style的制作,本篇将直接导入ESRI样式文件中自带的若干符号。具体步骤如
条新动态, 点击查看
以 ArcGIS for Server 10.1中启用了默认的自签名的Server站点中的服务为例,具体操作步骤如下:
Step 1:登录 ArcGIS for Server 的 Admin 页面导出默认的自签名证书
1) 登录 Admin 页面;
... 显示全部 »
以 ArcGIS for Server 10.1中启用了默认的自签名的Server站点中的服务为例,具体操作步骤如下:
Step 1:登录 ArcGIS for Server 的 Admin 页面导出默认的自签名证书
1) 登录 Admin 页面;
2)点击 Machines -> [机器名] -> sslcertificates -> selfsignedcertificate -> export 导出默认的自签名证书 SelfSignedCertificate.cer
Step 2:利用 KeyTool IUI 将 Step1中导出的自签名证书转换为 Android支持的BKS编码格式
1)打开 KeyTool IUI;
2)点击 View -> Select Task -> Create -> Keystore 打开 Create keystore 界面,选择 BKS 编码格式,选择 Keystore 文件的保存位置,可选地设置密码,完毕后点击 OK;
3)点击 View -> Select Task -> Import Keystore'entry -> Trusted certificate -> Regular certificate 在打开的对话框中设置 Source 和 Target。对于 Source,选择 DER,输入Step1 中导出的 cer 文件;对于 Target,勾选 BKS 编码格式,选择2)中创建的空的Keystore文件,可选地输入对应的密码;
4)点击Ok,一路确定获得最后的 bks 文件,如 myserversite.bks
在 ArcGIS for Android 应用程序中,将 myserversite 放置在 res下的 raw 新建文件夹中, 输入如下代码片段:
KeyStore keyStore = KeyStore.getInstance("BKS");
InputStream is = this.getResources().openRawResource(R.raw.myserversite);
keyStore.load(is, "***".toCharArray()); //此处的***是创建 bks 文件时所输入的密码。如果未设置密码,此处直接设为""
UserCredentials.setTrustStore(keyStore);
而后即可执行服务的加载。
【解决办法】:
由于Android客户端在向服务器端发送请求时,提交的图片格式的形式是format=png,这种形式下无法获取透明度的通道,因而导致无法获取具有透明度的返回结果。
建议
1)调用ArcGISDynamicMapServieLayer中的setO... 显示全部 »
【解决办法】:
由于Android客户端在向服务器端发送请求时,提交的图片格式的形式是format=png,这种形式下无法获取透明度的通道,因而导致无法获取具有透明度的返回结果。
建议
1)调用ArcGISDynamicMapServieLayer中的setOpacity方法。
2)重写ArcGISDynamicMapServiceLayer这个类的getImage(int width, int height, Envelope extent)方法。在这一方法中,重新发送请求,并确保请求参数中的png设置为png32。如下所示:
http://192.168.100.83:6080/arcgis/rest/services/chinas/MapServer/export?f=image&transparent=true&bboxSR=102100&imageSR=102100&bbox=1.1033475686340982E7%2C1588466.7357099324%2C1.3761912825307174E7%2C5505698.583164514&format=png32&size=407.75208%2C585.4118&dpi=96
张赛

张赛 回答了问题 • 2015-12-30 01:21 • 1 个回复 不感兴趣

许可和shapefile的问题

赞同来自:

【解决办法】:
ArcGIS Runtime SDK for Android 从10.2.4版本起即可支持Shapefile的加载。涉及的类名是ShapefileFeatureTable。
加载和显示的方法如下:

ShapefileFeatureTabl... 显示全部 »
【解决办法】:
ArcGIS Runtime SDK for Android 从10.2.4版本起即可支持Shapefile的加载。涉及的类名是ShapefileFeatureTable。
加载和显示的方法如下:

ShapefileFeatureTable shpFile = new ShapefileFeatureTable(Environment.getExternalStorageDirectory()+/arcgis/shpFolder/china.shp);
FeatureLayer fLayer = new FeatureLayer(shpFile);
fLayer.setRenderer(new SimpleRenderer(new SimpleMarkerSymbol(Color.RED, 18, SimpleMarkerSymbol.STYLE.DIAMOND)));


注意:
(1) Shapefile的加载无需Standard许可;
(2) Shapefile在现有10.2.X上不支持离线编辑;
张赛

张赛 回答了问题 • 2015-12-05 03:17 • 2 个回复 不感兴趣

2G网络服务访问延迟的情况下背景是黑色

赞同来自:

【解决办法】:
2G网络下,由于网速的问题,导致服务无法快速请求,从而在未获取到地图范围和空间参考的情况下,地图背景显示为黑色。 
这一情况可通过断网的方式浮现。在断网的情况下,地图控件可以正确加载,但是由于未实现地图的初始化从而导致整个背景未能正确显示白色格... 显示全部 »
【解决办法】:
2G网络下,由于网速的问题,导致服务无法快速请求,从而在未获取到地图范围和空间参考的情况下,地图背景显示为黑色。 
这一情况可通过断网的方式浮现。在断网的情况下,地图控件可以正确加载,但是由于未实现地图的初始化从而导致整个背景未能正确显示白色格网。 这一黑色背景的问题,已经以软件改进的类别向Esri提交过Incident,但是目前一直未得到修改。 
关于这一问题的折中方案如下: 
在网络无法得到保障的情况下,仅在本地放置低级别的缓存,以直接加载本地的离线缓存。或通过对网络处于2G\3G状态的信息进行判断,以对用户做出提示。关于2G、3G或WIFI等网络状态的获取,请利用Android SDK自身的ConnectivityManager来获取。
张赛

张赛 回答了问题 • 2015-12-29 16:00 • 1 个回复 不感兴趣

离线矢量数据的查询

赞同来自:

【解决办法】:
对于geodatabase的查询,请采用如下两种方式: 
1利用GeodatabaseFeatureTable的Query方法直接针对数据源本身进行查询,如:
(1) queryFeatures(QueryParameters query, C... 显示全部 »
【解决办法】:
对于geodatabase的查询,请采用如下两种方式: 
1利用GeodatabaseFeatureTable的Query方法直接针对数据源本身进行查询,如:
(1) queryFeatures(QueryParameters query, CallbackListener<FeatureResult> callback),
(2) queryIds(QueryParameters query, CallbackListener<long[]> callback) 
具体链接如下: 
https://developers.arcgis.com/android/api-reference/reference/com/esri/core/geodatabase/GeodatabaseFeatureTable.html 

2添加GeodatabaseFeatureTable的数据时,需通过FeatureLayer构建和添加到MapView中。因此可调用FeatureLayer下的select方法进行查询。如:
(1) selectFeature(long oid),
(2) selectFeatures(long[] oids, boolean inclusive),
(3) selectFeatures(QueryParameters queryParams, FeatureLayer.SelectionMode selectionMode, CallbackListener<FeatureResult> callback) 
前两个方法往往需要结合getFeatureIDs(float x, float y, int tolerance)或getFeatureIDs(float x, float y, int tolerance, int numberOfResults)来实现。 
具体链接如下: 
https://developers.arcgis.com/android/api-reference/reference/com/esri/android/map/FeatureLayer.html
【解决办法】:
首先,初始化一个空的Envelope;
即  Envelope env = new Envelope();

其次,调用Polygon的queryEnvelope()方法传入第1步骤中空的Envelope即可;
即 poly.queryEnve... 显示全部 »
【解决办法】:
首先,初始化一个空的Envelope;
即  Envelope env = new Envelope();

其次,调用Polygon的queryEnvelope()方法传入第1步骤中空的Envelope即可;
即 poly.queryEnvelope(env);
张赛

张赛 回答了问题 • 2015-12-30 10:26 • 1 个回复 不感兴趣

如何对离线gdb中的要素进行查询?

赞同来自:

【解决办法】:
利用geodatabasefeaturetable的query方法,通过传入 query 参数,在回调函数中直接实现返回数据的处理逻辑。
【解决办法】:
利用geodatabasefeaturetable的query方法,通过传入 query 参数,在回调函数中直接实现返回数据的处理逻辑。
张赛

张赛 回答了问题 • 2015-12-30 09:05 • 1 个回复 不感兴趣

Runtime Content生成中layerdefinition不起效

赞同来自:

【解决办法】:
根据美国工程师的回复,这是软件设计的问题。但是用户可以在featurelayer的层面上,通过设置DefinitionExpression进行图层属性的过滤。 

具体回复如下: 
Yes, it is by design that defin... 显示全部 »
【解决办法】:
根据美国工程师的回复,这是软件设计的问题。但是用户可以在featurelayer的层面上,通过设置DefinitionExpression进行图层属性的过滤。 

具体回复如下: 
Yes, it is by design that definition queries are not honored when creating runtime content from ArcMap. I have linked this case to an existing enhancement request that has already been logged regarding adding this information to our documentation. 
ENH-000083077 Documentation Enhancement Request: consider adding documentation saying that definition queries are not honored when creating Runtime Content from ArcMap. 
The workaround is to use FeatureLayer.setDefinitionExpression(String expression): https://developers.arcgis.com/android/api-reference/reference/com/esri/android/map/FeatureLayer.html#setDefinitionExpression(java.lang.String)
关于对FeatureLayer设置DefinitionExpression的具体方法,请参见下面的链接:
https://developers.arcgis.com/android/api-reference/reference/com/esri/android/map/FeatureLayer.html#setDefinitionExpression(java.lang.String)
张赛

张赛 回答了问题 • 2015-12-24 00:43 • 2 个回复 不感兴趣

Android端对于离线的支持

赞同来自:

【解决办法】:
Android端对于离线的支持主要分为两大方面:(1)离线的底图数据和(2)离线的业务数据。

对于离线的底图数据,通常以离线缓存包的形式即tpk方式提供,通过ArcGIS Runtime SDK for Android 中的ArcGISLoc... 显示全部 »
【解决办法】:
Android端对于离线的支持主要分为两大方面:(1)离线的底图数据和(2)离线的业务数据。

对于离线的底图数据,通常以离线缓存包的形式即tpk方式提供,通过ArcGIS Runtime SDK for Android 中的ArcGISLocalTiledLayer类进行加载;

对于离线的矢量数据,可以通过shapefile和离线.geodatabase两种形式提供。Shapefile方式下,只能进行离线的查看和查询,而且需要以代码的方式在前端进行渲染,数据的加载可通过ShapefileFeatureTable类实现;geodatabase方式下,如果以桌面模式创建的geodatabse,则只能进行查看和查询,而以服务模式创建的geodatabase,则可进一步实现编辑和同步的功能,两者都是通过GeodatabaseFeatureTable类来加载对应的图层或数据。而且,geodatabase形式下,可直接应用用于生成geodatabase的mxd中各图层的符号,以实现各layer的渲染,无需代码的方式完成渲染。

除了上述功能,Android端的离线还实现了对于离线栅格数据的加载,离线网络分析,和离线地址定位器等功能。
【解决办法】:
官方帮助文档中对于该问题没有详细的要求说明。
首先,要确保shp数据包含最基本的三个文件,详见:一个正常的shapefile文件必须要有的文件和可选文件参考链接:http://desktop.arcgis.com/zh-cn/desktop/... 显示全部 »
【解决办法】:
官方帮助文档中对于该问题没有详细的要求说明。
首先,要确保shp数据包含最基本的三个文件,详见:一个正常的shapefile文件必须要有的文件和可选文件参考链接:http://desktop.arcgis.com/zh-cn/desktop/latest/manage-data/shapefiles/shapefile-file-extensions.htm

根据本地加载三组shp数据得出如下总结:
在shp数据有空间参考的情况下,Mapview有无空间参考可以正常加载(注意:当shp和Mapview已有的空间参考不一致的时候, 不可以加载shp数据,因为没有办法动态投影shp数据)。
在shp数据没有空间参考的情况下,Mapview有无空间参考都不可以加载显示shp数据(注意: 当shp与Mapview都没有空间参考的情况下,如果shp数据的范围在屏幕的范围之内可以被加载显示)。
以上测试基于ArcGIS for Android 10.2.7和ArcMap 10.3.1。
【解决办法】:
ArcGIS for Android 10.2.7的API提供了setOrderByFields方法实现对要素服务生成的.geodatabase进行排序,使用该方法的前提需要要素服务本身支持supportedadvancedquery。但是这种... 显示全部 »
【解决办法】:
ArcGIS for Android 10.2.7的API提供了setOrderByFields方法实现对要素服务生成的.geodatabase进行排序,使用该方法的前提需要要素服务本身支持supportedadvancedquery。但是这种方式经过测试无效。可以通过以下示例代码实现在客户端对要素进行排序,但是如果要排序的要素过多,会影响性能:

[code]
private void queryTable() {

String[] outFields = {sortField};

QueryParameters queryParams = new QueryParameters();

queryParams.setOutFields(outFields);

queryParams.setWhere(objectid > 0);

featureTable.queryFeatures(queryParams, new CallbackListener<FeatureResult>(){

@Override

public void onCallback(FeatureResult objs) {

Feature[] arrayToSort = new Feature[(int) objs.featureCount()];

int i = 0;

for(Object object : objs) {

Feature feature = (Feature) object;

arrayToSort[i] = feature;

i++;

}

Feature[] sortedArray = prepareSort(arrayToSort, sortField, true);

for(Feature feature : sortedArray) {

System.out.println(feature.getAttributeValue(sortField));

}

}



@Override

public void onError(Throwable e) {

e.printStackTrace();

}



});

}



private Feature[] prepareSort(Feature[] arrayToSort, String fieldName, boolean ascending) {

try {

Integer.valueOf((String) arrayToSort[0].getAttributeValue(fieldName).toString());

return sortNumberArray(arrayToSort, fieldName, ascending);

}

catch (Exception e){

return sortStringArray(arrayToSort, fieldName, ascending);

}

}



private Feature[] sortStringArray(Feature[] arrayToSort, String fieldName, boolean ascending) {

System.out.println(stringSort);

Feature temp;

for(int i = 0; i < arrayToSort.length; i++) {

for(int j = 1; j < (arrayToSort.length-i); j++) {

if(ascending) {

if(arrayToSort[j-1].getAttributeValue(fieldName).toString().compareToIgnoreCase(arrayToSort[j].getAttributeValue(fieldName).toString()) > 0) {

temp = arrayToSort[j-1];

arrayToSort[j-1] = arrayToSort[j];

arrayToSort[j] = temp;

}

}

else {

if(arrayToSort[j-1].getAttributeValue(fieldName).toString().compareToIgnoreCase(arrayToSort[j].getAttributeValue(fieldName).toString()) < 0) {

temp = arrayToSort[j-1];

arrayToSort[j-1] = arrayToSort[j];

arrayToSort[j] = temp;

}

}

}

}

return arrayToSort;

}



private Feature[] sortNumberArray(Feature[] arrayToSort, String fieldName, boolean ascending) {

Feature temp;

for(int i = 0; i < arrayToSort.length; i++) {

for(int j = 1; j < (arrayToSort.length-i); j++) {

if(ascending) {

if(Double.parseDouble(arrayToSort[j-1].getAttributeValue(fieldName).toString()) > Double.parseDouble(arrayToSort[j].getAttributeValue(fieldName).toString())) {

temp = arrayToSort[j-1];

arrayToSort[j-1] = arrayToSort[j];

arrayToSort[j] = temp;

}

}

else {

if(Double.parseDouble(arrayToSort[j-1].getAttributeValue(fieldName).toString()) < Double.parseDouble(arrayToSort[j].getAttributeValue(fieldName).toString())) {

temp = arrayToSort[j-1];

arrayToSort[j-1] = arrayToSort[j];

arrayToSort = temp;

}

}

}

}

return arrayToSort;

}
【解决办法】:
基于Token认证的安全服务的加载要求token信息包含在每个请求中。
在ArcGIS Runtime SDK for Android中,这类安全服务的加载方式有两种:
1 若知道访问服务所需的用户名和密码,如zssai0/zssai0 Use... 显示全部 »
【解决办法】:
基于Token认证的安全服务的加载要求token信息包含在每个请求中。
在ArcGIS Runtime SDK for Android中,这类安全服务的加载方式有两种:
1 若知道访问服务所需的用户名和密码,如zssai0/zssai0 UserCredentials creds = new UserCredentials();
creds.setUserAccount(zssai0, zssai0 );
//若采用默认的token服务,则可忽略。这里显式地引用了192.168.220.116上的ArcGIS Server自带的token服务
creds.setTokenServiceUrl(http://192.168.220.118:6080/arcgis/tokens);
ArcGISDynamicMapServiceLayer dynamicLayer = new ArcGISDynamicMapServiceLayer(
    http://192.168.220.118:6080/arcgis/rest/services/SampleWorldCities/MapServer,null,creds);




2 若知道访问服务所需的token
2.1 获取token,如下图所示
http://7xospm.com1.z0.glb.clouddn.com/20160425-2.png

http://7xospm.com1.z0.glb.clouddn.com/20160425-1.png
 
注:Android端的token建议唯一识别您的应用程序,可通过在ArcGIS Developer网站上注册应用程序的方式获取应用程序的唯一ID,或采用其他唯一构建的方式。ArcGIS Runtime SDK for Android端对referer的要求不是很严格。我这里采用的比较简单,仅供测试用,如ArcGIS+Android+Client+HelloWorld。 UserCredentials creds = new UserCredentials();
creds.setAuthenticationType(AuthenticationType.TOKEN);
creds.setUserToken(ggKI0tcDIbBGJTrR6W9ETW0qjTJ6eoJ69XcMEW464ymwcK7hFwUbUr4tvieA93id_61Eis8vFu0vDHF9716B1A..,ArcGIS+Android+Client+HelloWorld);
creds.setTokenServiceUrl(http://192.168.220.118:6080/arcgis/tokens/);
ArcGISDynamicMapServiceLayer dynamicLayer = new ArcGISDynamicMapServiceLayer(
http://192.168.220.118:6080/arcgis/rest/services/SampleWorldCities/MapServer, null, creds);


ArcGIS Runtime SDK for Android 100.3.0 怎么加载涉密非公开图层!!!!

回复

Runtime SDK李文华 发起了问题 • 1 人关注 • 0 个回复 • 55 次浏览 • 2018-07-12 16:37 • 来自相关话题

有没有类似ArcGIS API for JavaScript 带token加载方式,如下代码:esriId.registerToken({
     token: tokens.token,
     expires: tokens.expires,
     ssl: tokens.ssl,
     server: token.server
});

ArcGIS for android加载动态online图层

回复

Mobilecoolbas 回复了问题 • 2 人关注 • 1 个回复 • 31 次浏览 • 2018-07-10 11:30 • 来自相关话题

请问各位大神,使用ArcGIS for android是否可以加载online上面发布的图层?我现在开发了一个APP,已经有底图,现在想实现从online中在线动态加载一个面状要素。如果不可以,请问有其他的实现方法没?

【Android】ArcGISVectorTiledLayer构造函数VectorTileCache和ItemResourceCache的使用

回复

Runtime SDKminokie 发起了问题 • 1 人关注 • 0 个回复 • 106 次浏览 • 2018-06-28 14:36 • 来自相关话题

ArcGIS Runtime SDK for Android 100.2.1
加载矢量瓦片图层类ArcGISVectorTiledLayer(VectorTileCache vectorTileCache, ItemResourceCache itemResourceCache) 中,参数VectorTileCache 和ItemResourceCache 如何使用?
准备了两个不同样式的VTPK

您好,请问一下arcgis for android100.2.1怎么通过自定义Locationdatasource纠正定位偏差

回复

Runtime SDKEvil genius 发起了问题 • 1 人关注 • 0 个回复 • 86 次浏览 • 2018-06-01 16:11 • 来自相关话题

ArcGIS runtime for Android 如何实现离线路径分析(导航)呢?

回复

Apps勾戈雪黎 回复了问题 • 2 人关注 • 1 个回复 • 130 次浏览 • 2018-05-29 18:02 • 来自相关话题

想问一下有没有什么好的解决方案或者接口调用

ArcGIS Runtime SDK for Android 100.2.1支持读取非UTF-8编码的SHP吗

回复

Runtime SDKls123_zh 发起了问题 • 1 人关注 • 0 个回复 • 133 次浏览 • 2018-05-25 18:23 • 来自相关话题

移动端读取老版本的ArcMap中的SHP文件(非UTF-8编码),中文乱码。SHP转成UTF-8编码之后,在移动端正常显示。但是现在由于一些原因,不能采用UTF-8编码,那么在这个前提下,在移动端存取SHP时能对SHP文件进行正常存取吗。

ArcGIS Runtime SDK for Android 100.2如何获取影像波段数和移除RasterRender

回复

Runtime SDK张赛 回复了问题 • 2 人关注 • 1 个回复 • 195 次浏览 • 2018-04-25 11:21 • 来自相关话题

如题。请问:10.2.x中有获取影像波段数相关方法,100.x中的方法在哪儿?
另外,对影像设置RasterRender之后,如何移除渲染效果。10.2.x设置为null就可以,100.x设置为null出错。

Arcgis for Android 10.2.8 加载有范围的png

回复

Runtime SDK张赛 回复了问题 • 2 人关注 • 1 个回复 • 141 次浏览 • 2018-04-25 09:41 • 来自相关话题

[
{
"cloud1h": "201804090700.png",
"cloud3h": "201804082300.png",
"cloud6h": "201804081800.png",
"c

ArcGIS Runtime SDK for iOS100.2.1版本支持离线spk/slpk三维数据包吗?

回复

Runtime SDK席西 回复了问题 • 2 人关注 • 1 个回复 • 250 次浏览 • 2018-03-23 09:24 • 来自相关话题

ArcGIS Runtime SDK for iOS100.2.1版本支持离线spk/slpk三维数据包吗?
看了官方文件明暗里说有调用离线spk/slpk三维数据包接口,怎么都找不到,还是ESRI考虑市场利润,根本就没开放离线调用3D数据包接口!

ArcGIS Runtime SDK for Android 100.2.1中Query和Identity问题

回复

Runtime SDK张赛 回复了问题 • 2 人关注 • 1 个回复 • 204 次浏览 • 2018-03-12 18:13 • 来自相关话题

MapView.identifyLayersAsync(mClickPoint, TOLERANCE, false, 100);

使用Identity点选查询,点击面内部时无法选中面,只有选中面边线时才能选中面。QueryParameters query = new QueryParameters();
query.setGeometry(point);
final ListenableFutu

ArcGIS Runtime SDK for Android 100.2.x日期类型字段属性无法保存

回复

Runtime SDK张赛 回复了问题 • 2 人关注 • 1 个回复 • 300 次浏览 • 2018-03-12 09:05 • 来自相关话题

代码如下:Feature addedFeature = mFeatureLayerTrack.getFeatureTable().createFeature();
addedFeature.setGeometry(polyline);
//获取要素属性结构
Map<String, Object> attrs = addedFeature.getAttributes();
attrs.p

ArcGIS Runtime SDK for Android 100.x加载多个geodatabase或shp,如何保证加载顺序?

回复

Runtime SDK勾戈雪黎 回复了问题 • 2 人关注 • 1 个回复 • 466 次浏览 • 2018-03-08 15:27 • 来自相关话题

同时按顺序加载多个geodatabase和SHP,每个geodatabase加载都是异步方法:Geodatabase.loadAsync();  SHP的加载也类似。
在addDoneLoadingListener()方法中用mapview加载图层,如何保证加载图层的顺序按Geodatabase和SHP的loadAsync()方法的先后顺序在MapView中加载。
因为是异步加载机制,图层加载顺序

ArcGIS Runtime for Android 100.2.x 系列——丰富多彩的符号渲染之Mobile Style篇

Runtime SDK张赛 发表了文章 • 1 个评论 • 341 次浏览 • 2018-03-09 00:00 • 来自相关话题

ArcGIS Pro提供了一种新的符号样式Mobile Style,以方便用户在ArcGIS Runtime端自由使用。本篇我们将基于ArcGIS Runtime SDK for Android 100.2.1具体探讨一下Mobile Style在移动端的简单应用。

1 制作Mobile Style

对于Mobile Style的制作,本篇将直接导入ESRI样式文件中自带的若干符号。具体步骤如

喜大普奔!!ArcGIS Runtime SDK for Android 100.2 支持本地Shapefile文件的编辑啦!!!

Runtime SDK张赛 发表了文章 • 0 个评论 • 834 次浏览 • 2018-01-12 00:00 • 来自相关话题

对于Shapfile这一文件格式,ArcGIS Runtime SDK for Android 在100.2.0系列中推出了两大重磅利好消息: 
(1) 实现对本地 Shapfile 文件的加载、显示和查询 
(2) 实现对本地 Shapefile 文件的编辑,即增删改操作 
毋庸置疑,对于广大的ArcGIS移动端爱好者而言,支持Shapefile编辑操作绝对是一则振奋人心的好消息。
今天,我们就

安卓智能地图开发与实施二十一:栅格渲染器 - ArcGIS Runtime SDK for Android(Version 100.1.0)

Runtime SDK大虾卢 发表了文章 • 0 个评论 • 324 次浏览 • 2017-11-16 00:00 • 来自相关话题

栅格渲染器(RasterRenderer)
与矢量渲染类似, RasterRenderer能够对栅格图层( RasterLayer )进行展示和可视化。目前包括以下内容:
HillshadeRendererBlendRendererColormapRendererStretchRendererRGBRenderer

HillshadeRenderer(山体阴影渲染)
主要针对数字高程模型、单波段

安卓智能地图开发与实施二十:栅格图层展示 - ArcGIS Runtime SDK for Android(Version 100.1.0)

Runtime SDK大虾卢 发表了文章 • 0 个评论 • 271 次浏览 • 2017-11-16 00:00 • 来自相关话题

栅格图层(RasterLayer)
用以加载展示移动端本地文件、移动镶嵌数据集、影像服务。
栅格文件(Raster)
mainMapView =(MapView) findViewById(R.id.mapView);
ArcGISMap mainArcGISMap = new ArcGISMap(new Basemap());
mainMapView.setMap(mainArcGISMap)

Android Studio入门阶段的山路弯弯之Android设备篇

Mobile张赛 发表了文章 • 0 个评论 • 280 次浏览 • 2017-11-08 00:00 • 来自相关话题

Android Device Monitor篇
1 找不到外置存储卡根目录?
Q:在应用程序中通过Environment.getExternalStorageDirectory().getAbsolutePath()获得外置存储卡根目录是/storage/emulated/0,可是File Explorer中却看不到这一路径,怎么办?
A:打开Windows的cmd窗口,进入Android SD

安卓智能地图开发与实施十九:符号与渲染器 - ArcGIS Runtime SDK for Android(Version 100.1.0)

Runtime SDK大虾卢 发表了文章 • 0 个评论 • 508 次浏览 • 2017-08-21 00:00 • 来自相关话题

符号与渲染器
符号与渲染器(Symbols and Renderers),通过色彩值、大小、形状、边线、透明度来表达空间要素的具体含义。如果仅仅有位置,而没有位置上的属性信息,位置也会失去意义,符号与渲染器是呈现位置上属性信息的最直接表达方式。对于Graphic(GraphicsOverlay),可以直接赋值符号或者设置渲染器,而对于Feature(FeatureLayer)只能通过渲染器进行设置

安卓智能地图开发与实施十一:业务数据查询 - ArcGIS Runtime SDK for Android(Version 100.0.0)

Runtime SDK大虾卢 发表了文章 • 0 个评论 • 461 次浏览 • 2017-08-21 00:00 • 来自相关话题

业务数据查询
地图通常能够结合诸多资源,无论是符号化、注记还是图例往往不能够满足对信息的表达,为了更多更细节地承载信息,通过查询和地图上的弹出式窗口能够完整的展示资源的属性信息。业务数据的空间查询,是展示更多信息的第一步。


可进行查询的方法:
MapView( GeoView ) - identifyLayerAsync方法MapView( GeoView ) - identifyLayers

安卓智能地图开发与实施八:离线业务图层(浏览查询) - ArcGIS Runtime SDK for Android(Version 100.0.0)

Runtime SDK大虾卢 发表了文章 • 0 个评论 • 535 次浏览 • 2017-08-21 00:00 • 来自相关话题

离线业务图层
离线业务图层,在很大程度上减少了对网络的依附。无论是哪个行业的外业核查,都需要详细的原有信息进行支撑,而涉及地图、位置的信息核查,通过离线数据可以在本端形成对比核实能力。
离线业务图层 - Geodatabase文件(FeatureLayer)

离线FeatureLayer(Geodatabase文件)通过GeodatabaseFeatureTable来解析Geodatabase文

安卓智能地图开发与实施十:图层管理 - ArcGIS Runtime SDK for Android(Version 100.0.0)

Runtime SDK大虾卢 发表了文章 • 1 个评论 • 454 次浏览 • 2017-08-21 00:00 • 来自相关话题

图层管理
图层管理分为了基础底图切换和业务数据管理。基础底图主要是进行切换,而业务数据管理的功能因项目而已,基本有控制显示、图层查询、统计等。
基础底图

基础底图的加载前面的章节已经介绍过,只需要从做好布局,处理ArcGISMap对象的Basemap切换即可。
<?xml version="1.0" encoding="utf-8"?>
<

安卓智能地图开发与实施十六:三维地图 - ArcGIS Runtime SDK for Android(Version 100.1.0)

Runtime SDK大虾卢 发表了文章 • 1 个评论 • 516 次浏览 • 2017-08-21 00:00 • 来自相关话题

三维地图
三维地图多了一个维度来基于位置表达信息,100.1的版本中已经整合了完整的三维展示方案。新版本发布,我们先看效果。

和二维地图的MapView相比,三维地图使用SceneView。
三维地图布局文件<?xml version="1.0" encoding="utf-8"?>
<com.esri.arcgisruntime.map

安卓智能地图开发与实施十八:空间要素绘制 - ArcGIS Runtime SDK for Android(Version 100.1.0)

Runtime SDK大虾卢 发表了文章 • 0 个评论 • 479 次浏览 • 2017-08-21 00:00 • 来自相关话题

空间要素绘制

日常应用中无论是草图绘制,还是外业采集都需要在移动端进行空间要素的绘制。而ArcGIS Runtime SDK for Android中提供了Geometry、Feature、Graphic,这三者到底如何使用,本文稍微做做解答。
空间要素(Geometry)
Geometries用以在特定地理位置上通过形状来表达真实世界的对象。图层范围、视图范围、GPS定位都是通过Geometr

安卓智能地图开发与实施三:创建第一个地图程序 - ArcGIS Runtime SDK for Android(Version 100.0.0)

Runtime SDK大虾卢 发表了文章 • 2 个评论 • 654 次浏览 • 2017-08-21 00:00 • 来自相关话题

本文纯粹是流程操作,手把手第一次,先看效果图。
   
1、创建一个新工程(File > New > New Project) 
2、输入工程名:Set Map Initial Location 
3、修改Company Domain 和 Project Location 
4、修改Package name 
5、点击下一步,勾选“Phone and Tablet” 
6、选择合适的S