ArcGIS Runtime API for Java is designed for developers who want to write cross-platform desktop applications based on the JavaFX framework. Write your Java code once and then your apps can be deployed to Windows, Linux, or macOS.
This page describes common ArcGIS Runtime API for Java capabilities you can add to your app. For an interactive overview, download the ArcGIS Runtime API for Java Sample Viewer. You can explore dozens of interactive samples and view the code that powers them.
You can use an interactive map to:
- Display a basemap layer such as streets or satellite imagery.
- Access and display data layers based on files, databases, or services, including data you have authored. Use the Portal API to consume content and services from ArcGIS Online or ArcGIS Enterprise portals.
- Provide context for temporary points, lines, polygons, or text displayed as graphics.
- Measure distances and explore spatial relationships between geometries.
- Inspect features from data layers and view attributes that describe them.
- Save a collection of layers as a web map to be shared across ArcGIS.
- Rotate the map view.
- Filter the display of features according to attribute values, area of interest, or a time extent.
- Integrate native device capabilities, such as GPS, camera, calendar, and contacts.
- Work with maps and layers while disconnected from the network (offline).
Change a map's basemap (Java). A basemap displays below all other layers in order to provide visual and geographic context for data layers in a map or scene.
Display a map. Step through API setup and create a map instance and its map view to display a topographic basemap.
Learn how maps, map views, and layers work together to help you solve problems, present information, perform what-if analysis, and more.
You can use an interactive scene to:
- Display and share collections of 3D geographic data.
- Show accurate terrain elevation.
- Perform 3D analysis, such as viewshed and line of sight.
- Show content beneath the surface.
- Build augmented reality apps to create immersive 3D experiences.
Create a terrain surface with elevation described from a local tile package.
Create a scene instance to provide a 3D visualization of data.
Learn how to create simple 3D scenes and use scenes for 3D analysis.
- Use a variety of formats of spatial data (data layers), such as hosted ArcGIS services, Open Street Map, KML, WFS, WMTS, Shapefile, and many others.
- Work with layers while connected or disconnected from the network.
- Work with nonspatial data and tables.
- Enable users to collect and edit data in the field and synchronize edits with your enterprise geodatabase.
ArcGIS location services provide a range of capabilities, such as displaying basemaps, searching (geocoding) for addresses, and finding routes between locations. You can also create your own services and consume them in your ArcGIS Runtime app.
For offline, feature services must be sync-enabled and tiled services must be enabled for "export tiles."
Basemap layer service
Ready-to-use vector and image tile basemap layers for the world.
Find a route between two locations, which can be used for driving directions or walking directions.
Search for addresses, businesses, and places around the world.
ArcGIS Runtime enables you to use maps and scenes when you have no network or cellular connection.
You can download a portion of a web map to use offline (before going offline, select the area you want) or sideload/install a package of maps or scenes directly onto your device.
You can also download areas of individual feature service, vector tile service, or image tile service data.
ArcGIS Runtime also allows you to access data files already downloaded/sideloaded/installed on your device (multiple formats are supported, such as shapefiles, GeoPackages, KML, geodatabase, and many others).
Capabilities supported by maps and scenes in offline workflows include:
- Navigate and explore
- Collect and edit data while offline (in the field, for example) and synchronize your edits with the server when connected again
- Find places
- Find routes (driving directions, walking directions, and so on)
- Calculate service areas
- Perform analysis
Scenes additionally support the following:
- Manage a virtual observer with camera controllers
- Perform interactive visual analysis such as viewshed and line of sight
Sync edits made offline.
OCHRE® uses ArcGIS Runtime API for Java to facilitate data collection (including in offline workflows) and data visualization of archaeological discoveries.
- Customize the display of symbols in your app using custom styles created in ArcGIS Pro (such as web styles or dictionary symbology).
- Create your own style using the ArcGIS Vector Tile Style Editor, which allows you to interactively create a style for an Esri vector basemap and save it in ArcGIS Online as a portal item. You can then open the basemap from the portal item to display it in your map with the custom style.
- Use predefined styles for WMS layers.
- Use graphics to display large numbers of moving symbols while maintaining the smooth feel of a native app.
- Depict several pieces of information with a single symbol using a dictionary renderer.
- Use callouts and labels to show textual information.
- Configure pop-ups.
- Search, query, and identify geographic features using any combination of spatial, attribute, or temporal criteria.
- Use simple editing or multi-editor workflows.
- Edit while disconnected from the network and synchronize your edits when reconnected.
- Calculate optimal routes between locations and generate directions.
- Calculate drive times and multi-stop routes with driving directions.
- Use Esri routing data, 3rd party routing data, your own data, or a combination. Download a free sample of Streetmap Premium data (greater Los Angeles area) to use with your ArcGIS Runtime app.
- Integrate native devices, such as a GPS or a camera. For example, use the current GPS location as the starting point for a route.
- Perform geometric operations and evaluate spatial relationships between geometries.
- Perform spatial analysis using geoprocessing tasks and services. Dozens are available that you can string together for modeling, what-if scenarios, and batch processing.
- Run local analyses on desktop deploy targets (with Local Server).
- Use utility network capabilities to trace and analyze the flow of resources, such as gas, water, and electricity.
- Read utility network information stored in a web map.
- Use branch versioning for multi-user editing, edit tracking, and what-if analyses.