Chapter 1. Introduction to Mobile Web ArcGIS Development
We live in interesting times. Mobile and cloud computing are changing how and where we are able to use technology. No longer are we limited to our home or office. Today, technology is accessible and usable at any location and at anytime. By technology, we mean computers, smartphones, tablets, and the new phablets.
Mobility means the ability to change location. This has suddenly made location and location-based data and analysis terribly important. Geographic Information Systems (GIS) is a location-focused technology. It provides the means to collect, store, visualize, and analyze any and all location-based data.
Today's cloud-based mobile world heralds the beginnings of a revolution in location technology and GIS.
This book will introduce you to mobile application development using Esri's mobile ArcGIS JavaScript API; it presumes that you are familiar with HTML, JavaScript, and CSS. The API provides a rich set of tools for developing high performance, engaging mobile ArcGIS applications. You will learn about the classes available in the API for mobile development, how to use them in a JavaScript-based mobile web application, and how to incorporate ArcGIS services and ArcGIS Online content to enhance your applications. ArcGIS RESTful web services will also be introduced, which will provide resources via argument/value pairs. The ArcGIS Feature service, that will be introduced early in the book, is one of the many examples. In this chapter, we will go through some of the fundamentals: how mobile development is different from standard web development and design and performance considerations, mobile device types and popular mobile frameworks that are now available, and the more advanced changes that the rapid advancement in mobile- and cloud-based technologies are bringing to the GIS industry.
The topics covered in this chapter are as follows:
- Web ArcGIS development
- Differences between mobile development and traditional web development
- Introduction to mobile frameworks
- How mobile web is different from traditional web
- The impact of mobile and cloud-based technologies
- The Cloud on the GIS industry
Fundamentally, Web ArcGIS development is focused on providing users access, through any web browser, to services provided by the ArcGIS platform: ArcGIS Server, Portal for ArcGIS, and ArcGIS Online. Portal for ArcGIS provides the same experience as ArcGIS Online but within an organization's infrastructure (on-premise or in the cloud). This is a particularly good solution where there are concerns around security. The following screenshot illustrates the mobile ArcGIS application running on an iPad:
Often, mobile ArcGIS application begins with an interactive map that consists of a base map overlaid with point, line, or polygon layers. Click or tap on one of these features and a pop should appear listing the feature's attributes.
ArcGIS web applications are not only used for visualization, but they often provide specific functionality too. Tools can be built that give users specific workflows. These tools might include search, identification, buffering, measurement, and more. One of the attractions of ArcGIS technology is the number of RESTful web services that are provided. There is an expanding list of services such as those that transform an address to a location (geocoding), a location's surrounding area demographics (geoenrichment), and projection (geometry). Web services provide the base for the tools that developers build into their mobile web ArcGIS applications. ArcGIS is a service-rich platform that can be easily accessed through one of the many web APIs such as the ArcGIS JavaScript API.
The transition from standard web development to mobile development needs careful planning and consideration. Mobile web development is different. It is generally targeted at a multitude of low-powered mobile computers that are limited in memory, storage, and processing power. Combine this with the range of different mobile device types and screen sizes; design and performance are key considerations when planning the development of any mobile ArcGIS web application.
It is worth discussing some of the differences between standard and mobile web development in a little more detail. There are some key areas that should be mentioned, notably the screen size, user interaction, design, functionality, and performance considerations.
Tip
Downloading the example code
You can download the example code files for all Packt books you have purchased from your account at http://www.packtpub.com. If you purchased this book elsewhere, you can visit http://www.packtpub.com/support and register to have the files e-mailed directly to you.