Deploying mobile solutions using ArcGIS field apps can improve the efficiency of your field operations as well as update the accuracy and currency of your data. We hear stories every day about how deploying mobile solutions are cutting costs, improving … Continue reading
Sharing content between ArcGIS Online and ArcGIS Enterprise just got better with the June 2017 and 10.5.1 releases. Prior to these recent releases, it was possible to reference and use layers that were hosted in ArcGIS Enterprise and ArcGIS Online … Continue reading
When connecting to a virtual machine either on-premises, or in the cloud, users can now choose from several different protocols to make the vital connection between the backend server and the client. Where once limited to a simple text-based console or Remote Desktop (using RDP), we can now choose from other contemporary protocols. This blog discusses the performance of PCoIP and Blast, two common protocols that provide the necessary rich 3-D experience for ArcGIS Pro, while maximizing what can often be a constrained network connection on Desktop machines, Thin/Zero-Clients, and mobile devices. Before diving in, let’s take a moment to understand the difference between PCoIP and Blast. PCoIP uses the UDP protocol which is suited for media streaming. To use PCoIP, you need to use a client such as the horizon View client from VMware. VMware Blast Extreme can also use the same client yet uses the H.264 protocol for encoding video, and shares similar advantages of PCoIP. Blast, on the other hand, can use a modern browser’s ability to link to the Virtual Machine, without a plugin. While a user can use a client like the Horizon View client, they can also use a browser such as Chrome or Firefox to access and interact with a VM. Below is a demonstration of ArcGIS Pro running in both a PCoIP client and using a browser with Blast.
Quality of the network connection has a huge impact in performance and a superior visual experience. Under ideal circumstances, you may be connecting using a highly optimized LAN with ample bandwidth. Ultimately though, you may be connecting using a more constrained WAN/Internet, with wireless networks adding yet more instability to the connection. As you can see in the video, the quality for both systems running is comparable, and both perform well. ArcGIS Pro was both responsive and snappy to commands. Beyond testing with just a virtual machine connecting to a laptop, an iPhone was used to connect to the VM. To connect to the PCoIP instance, like the laptop experience, the iPhone needed to download a client, whereas a blast connection can be made with the browser. This kind of functionality means that with a virtualized environment ArcGIS Pro and the data can be housed with either a hosted or on premises solution, yet accessed from anywhere, allowing ArcGIS Pro to be taken anywhere and accessed as needed.
For additional information on virtualization please visit https://blogs.esri.com/esri/ and search for “virtualization” for additional information.
Current testing has been performed using a Dell r730 Virtualization Appliance, with information on that hardware able to be found here.
For additional information on VMware Blast please visit
For additional information on PCoIP please visit
At Esri we are focused on, and work on solutions that matter, as well give benefit our user community’s needs and requests. The Performance Engineering team has fielded several requests to run ArcGIS Pro with VMWare App Volumes. App Volumes … Continue reading
ArcGIS connects maps, apps, data, and people so you can make smarter, faster decisions. It gives everyone in your water utility the ability to discover, use, make, and share maps from any device, anywhere, anytime. ArcGIS Online, Esri’s SaaS system, … Continue reading
A series of “how-to” videos is available to help you with the deployment of
ArcGIS 10, including
- ArcGIS 10 Deployment Quick Tour
- Customer Care Site: Software Management
- Customer Care EDN
- ArcGIS 10
- Installing ArcGIS Desktop
- ArcGIS 10 Authorization
- ArcGIS 10 Deployment Best Practices
The videos are between 10-30 minutes long, and are available through the Esri Training web site.
An Esri Global Account is required.This content is for US customers but will be posting non US information soon.
Here is a new .NET utility that you might find useful. The API Evaluator is a tool that allows you to scan your ArcGIS .NET code and generate statistics on the API usage. It also provides you with a mechanism to send feedback directly to ESRI about the APIs that are most important to you. Read on if you would like to know more.
How it works
The API Evaluator allows you to browse to a .NET .exe or .dll, scan the code, and identify all of the calls to ESRI types. The report and statistics are returned to you in an interactive Results Viewer window. This information reveals the following:
1. The .NET assembly references found;
2. The assembly version;
3. The ESRI types called; and,
4. The number of times a call is made to each interface, property and method.
Scenario: Exploring the unknown…
You download a large code sample and know very little about how the code was written or what types are referenced. Simply use the New Scan option to step you through the scanning wizard browse to the assembly and generate statistics. Use the Results Viewer to and expand the treeview and view the number of calls to each item.
Evaluating the Results
The API Evaluator revealed that the code makes a total of nineteen calls to ESRI objects, from five libraries: DataSourcesGDB, GeoAnalyst, Geodatabase, SpatialAnalyst and System. Two of the calls are made to objects in the SpatialAnalyst library. All of this information is recorded and displayed in the Results Viewer.
So why is this important?
In this case, the tool revealed that SpatialAnalyst types are called, and therefore, the code will require clients to check out a SpatialAnalyst license at runtime.
I’m sure you can think of many different uses for this tool, but in general, a developer could use this tool to:
1. Determine the general API usage for larger or unknown code samples;
2. Determine the license-level required for an application;
3. Refactor and improve your own code where redundant calls are identified;
4. Detect library dependencies to help with deployment scenarios.
5. Detect version dependencies.
BONUS – Send us your feedback!
As an added bonus, the tool also allows you to upload your scan results directly to the ESRI Development Team. When you upload, you have the option of providing your contact details before the information is sent to a web service hosted here at ESRI. Once received, your statistics will be analyzed further to:
1. Better understand the APIs that our customers are using (most popular).
2. Make improvements to focused areas of the documentation and samples.
3. Use the information for future API development projects
For more information on the tool, you can review the documentation or download it from the Code Gallery.
Your Feedback is important
Although the “Upload Scan” functionality 100% optional, we appreciate all feedback from the developer community, so we hope you find this tool useful and you can spend a few minutes uploading the results back to ESRI.
Thanks again for your participation!
An extremely important and challenging step in building an effective mobile solution is the deployment of it. Deployment involves packaging all of the information required to complete operations in the field and getting that information into the hands of your field workers so they can be efficient and productive with the software and data you give them.
I would like to focus this blog entry on deployment of the ArcGIS Mobile application, mobile projects and data to Windows Mobile handheld devices. If you need to deploy a custom mobile solution to laptops or tablets, you should take a look at a code gallery posting we have for building a mobile runtime.
There is no “one solution fits all” when it comes to deploying mobile solutions. Factors such as the size of your field workforce, the devices that they use in the field, the volume of data required for field use, and the frequency you need them to synchronize with the office all influence the choices you will make. Let’s not forget to factor in IT infrastructure either!
It all boils down to 2 methodologies. Either you “push” information to devices or you “pull” information from a server to your device. There are a number of 3rd party deployment systems in the marketplace today that you can use to “push” deployments to devices (Microsoft, SOTI, and Motorola are a few companies that offer solutions). With ArcGIS Mobile, we offer a web-centric solution for the “pull” model out-of-the-box by creating a web site and web service that hosts your mobile projects and the ArcGIS Mobile application. More on that a little later.
Windows Mobile and CAB files
First it is important to understand that Windows Mobile devices use cabinet files (.CAB files) as a compressed installer for applications and CAB files can be used for other information (such as map data). Marcus Perryman wrote an interesting blog article on MSDN explaining cabinet technology so I won’t go into details on the technology here.With ArcGIS Mobile at 9.3, we include a .CAB file for the out-of-the-box application and provide that CAB file as a link on a web page that you can download from your mobile device. Deploying the ArcGIS Mobile application to a mobile device is as simple as clicking on the CAB link from your device.
Note that at 9.3 we also include a CAB for the SDK runtime as well. You can use the SDK runtime in the deployment of your custom Windows Mobile application.We recently posted a code gallery entry on how you can create a .CAB file for your application that includes this SDK runtime CAB using Visual Studio.
ArcGIS Mobile Web Site
When you install ArcGIS Server at 9.3, a new web site is created to help you manage your mobile deployments (http://yourWebServer/yourInstance/Mobile). This web site is optimized for mobile browsers as well. It contains a link to the .CAB file for the ArcGIS Mobile application, and links for each of the projects that you create inside of the Server Manager as shown below. Projects are xml files that configure the ArcGIS Mobile application with data and tasks.
From your Windows Mobile device, you can use the web browser and navigate to the web site on your server, download and install the application by clicking on the link, and download the mobile project which configures the mobile application to use appropriate map data and tasks for your work in the field.
Using the ArcGIS Mobile application you can open the project and pull map data from the server using the Synchronize task. Pulling map data from the server to the device can take time if are wireless so be careful…
What would be more efficient is to pre-cache the data, create a .CAB from it, and somehow get this CAB file to the mobile device. But how?
Creating a Data Deployment Cache
Within ArcGIS Desktop, you will find a new toolset in the ArcToolbox window that contains 2 new geoprocessing tools for building mobile datasets:
Ignoring the Create Mobile Basemap tool for a minute, lets discuss the Generate Mobile Service Cache tool. This tool inputs a connection to your mobile service, lets you pick a set of map layers and an extent, and creates an output cache into a defined folder location. For your mobile projects, you can create caches using this tool for deployment to devices.
The Create Mobile Basemap tool can be used to build a highly compressed mobile base map. This tool uses a map document as input and creates a folder of SDC files. Inside of the project you define you can specify a base map when determining the layer source. Please read more about preparing maps and data to understand how you can leverage base maps inside of ArcGIS Mobile.
Building a Data Deployment CAB
Once you have built a mobile service cache, you can then create a data deployment CAB. If you are savy in the ways of Visual Studio, you can use it to create a CAB file from your mobile service cache. But if not, we have put a utility application that you can use to create your own cache on the code gallery called the Data Deployment Utility. Using this tool, you can create a CAB file for your mobile cache.
Tweaking the Mobile Web Site
The ArcGIS Mobile application CAB file and each of the mobile project files are stored on your web server. You can find these files at: \yourServerInetpubwwwrootyourInstanceMobile. Projects are stored in the Project folder, the CAB file is located in the Software folder.
Also at that folder location you will find 2 ASP web pages – Default.aspx and MobileDefault.aspx. As you might expect, MobileDefault.aspx is the web page loaded when you access the site from a mobile web browser and Default.aspx is the web page loaded from a Desktop. You can extend either web page with your own information and/or links to other downloads.
The <body> tag inside of MobileDefault looks like this:
<form id=”form1″ runat=”server”>
You can extend the page with your own content with something like this (in bold) where the:
<mobile:Form id=”mobileForm” runat=”server”>
Project X Data CAB</a>
If ProjectXData.CAB is located in the software folder, the end result will be a new link for your data CAB directly below the project list like so:
From your mobile device you can click on the new link added to the MobileDefault.aspx web page and it will download and install the mobile service cache onto your device.
Deployment is an important step in building an effective and efficient mobile solution. There are a number of factors to consider when choosing a deployment methodology and there are deployment systems that you can purchase to make the deployment process easier. ArcGIS Mobile provides a very simple, out-of-the-box experience for deployment that you can extend for your needs. Remember that deployment can make or break the success of a mobile solution. Spend time in analyzing how deployment best fits into your field operations before making any decisions.