2018Esri开发竞赛 移动开发技术答疑 整理(07月11日)

0
分享 2018-07-12
2018Esri开发竞赛 移动开发(Android为主)技术答疑 整理(7月11日)

1. 问:ArcGIS Runtime SDK for Android可以调用在线的高德地图么?
答:这取决于高德服务是以什么方式提供的。如果是传统的栅格切片的方式,可以通过扩展实现,如果是矢栅结合的话,那就不可以。

2. 问:ArcGIS Runtime SDK for Android如果加载大批量的数据 ,会有卡慢的现象吗?
答:大批量数据的话,需要注意加载的方式。比方说,我们以矢量和栅格混合的方式,在小比例级别用tpk,在大比例级别tpk invisible,直接加载runtime geodatabase,100.x系列上提供了Scale的监听事件,所以实现起来还是比较容易的。例如你加载100w的数据,在小比例级别Android端并不会自动抽稀,那么加载后内存会立刻飙升,那么绘制必然会慢,就是所谓的卡慢现象。所以得调整加载的方式和流程。其次,你可以用vtpk的方式,但是vtpk的前期制作非常重要。可能需要手动或通过自动化处理进行前后各个比例级别的抽稀,否则,显示也是存在卡顿和异常的。另外,加载速度和设备本身存在关系。如内存,cpu等,可以通过Android端提供的监控界面查看。最后,在渲染方式上,对于单个图层,如果不经常变化的话,可以设置渲染方式为static而不是dynamic。

3. 问:目前移动地图包mmpk只能通过ArcGIS pro构建吗?
答:对的,也可以通过Arcmap单独创建你自己的runtime geodatabase,tpk,或vtpk。mmpk就是对各种格式的组合。

追问:我用arcmap10.6构建的地图包依然可以供移动端调用吧,可能性能上没有arcgis Pro的mmpk好吧?
答:如果您的mmpk包含的是同一个tpk,理论上加载方面的差别不会特别大。您可以解压mmpk看一下。另外,对比一下mmpk和tpk的文件大小以及分别运行时设备的CPU和内存的差别。

4. 问:如图是什么情况,是版本不匹配吗?直接java可以实现,用gradle却不行了。
 
image001.jpg

答:应该是需要翻墙。或者您直接把这个zip包下载后,放置到C盘默认位置下;您可以去网上搜索一下手动配置gradle的教程。

5. 问:请问我自己发布的地理编码,为什么Suggestions无法出现,而官方提供的地理编码却可以。如图是我发布的地理编码,size为0。
 
image002.jpg


image003.jpg

 
答:Android端发送的请求必然是到服务器端的,所以我建议您配置Fiddler跟踪一下请求,从请求参数和响应中查看,看看是否能够查找到问题。

追问:Fiddler是配置在server上吗?
答:对,然后在Android设备上设置代理,通过电脑上的Fiddler监控。您可以直接到网上查Fiddler对Android应用抓包相关的主题。

感谢武汉理工大学张东同学的整理。

0 个评论

要回复文章请先登录注册