Transcript

00:01The mobile platforms that we support have both applications and SDKs.

00:05The applications many of you are familiar with.

00:08You've downloaded them, and you've used them to access web maps that you've authored.

00:13Well we use our own SDKs to build these applications so that means that all the functionality that you're seeing...

00:20...you have access to as developers when you're building your custom workflow.

00:24So I'd like to show you a custom application today.

00:26It's built using the ArcGIS Runtime SDK for iOS, and we've used the latest version of the SDK...

00:33...which is version 2.2 which will be available for you this week.

00:37However, most of the functionality I'm about to show you is available for you right now.

00:42So here's the application.

00:44On the left-hand side, we've got some UI views that are displaying some textual content...

00:50...and, of course, we've got our map over on the other side.

00:53The map is loading basemap data from ArcGIS Online, and we've draped over some operational data.

01:00One of the new capabilities of the SDK is that it gives you access to your organizational content through a new class...

01:09...called AGS portal.

01:10So we see here that I've got a number of online basemaps that I can choose from...

01:14...and this is the content that my company has published through their subscription.

01:18I've also got some local basemaps here.

01:21These are basemaps that have been provisioned using the tile package and put directly on the device.

01:27So let's go ahead and use one of these local basemaps.

01:31One of the big advantages of native application development is that you have access to different components of both...

01:38...the device but as well as the system, like other applications.

01:42For example, I've got my e-mail application here. I've got a CSV file attached.

01:48I've registered this file type with my application, such that when I tap and hold, I can tell my application to open this file.

01:56We've parsed the information, and we've put the stops on a graphics layer.

02:00Another component of the system that we can access is the address book through the address book class.

02:06So we see here that I have taken out my many, many contacts and friends, and I've put them over here in a UI view.

02:15Now besides the fact that I really don't have a lot of friends here...

02:19...we can access the individual bits of information in each one of these contacts.

02:23For example, we can get at the address information, and we can send that information to a geocoding service...

02:32...and plot the location of the map.

02:35And we'll go ahead and we'll specify that we want this to be one of our stops.

02:39You may notice that also on the left-hand side, I've stacked a number of UI views...

02:44...and this is so we can maximize map real estate for this iPad form factor.

02:49But if I wanted to take a look at the views underneath, I could simply expand them.

02:53Here we see in the middle I've got a list of my stops.

02:56I'm going to go ahead and select that one.

02:58I'm also going to just reorder a little bit my stops, and now we're going to get the optimal route.

03:06So that actually happened pretty fast, so let me explain what we did there.

03:10We used a routing task and we sent a request to a network analyst service passing in all of our stops.

03:17That network analyst service determined the optimal route...

03:21...sent that route back to us along with a list of directions that we've also displayed here. Okay?

03:26The SDK also supports custom network routes.

03:30So I know a lot of you out there have leased lines or privates roads that you need to navigate on.

03:35The SDK will support any custom routing services as well.

03:40The SDK allows you to build applications that let your users stay productive when they're offline.

03:47So in order to demonstrate that, I need to actually bring all of the data offline.

03:51Now, we already have the basemap data offline, right?

03:54We've deployed that as a tile package directly to the device.

03:59We've instantiated and instance of a local tile layer class, and we've added that to the map view...

04:04...so the basemap is already offline.

04:07But we need to bring those features down as well.

04:09So let's go ahead and download them.

04:11So what we're doing now is, we are sending a query to a feature service.

04:15We're taking those features, and we're storing them in memory. Okay.

04:19So that happened pretty quickly.

04:21We downloaded probably about 7,000, 7,500 features in just a few seconds.

04:27Okay. We're ready to go offline.

04:31So let's go ahead and do that.

04:33We'll come back to our application.

04:35We see here that I've got no 3G access, no Wi-Fi access, yet I still have access to all of my rich data...

04:42...and it's actually very, very fast, too.

04:48Another capability of the SDK that you may not be aware of is this autopan feature...

04:52...and that's been there since the last release.

04:55And the autopan feature exposes a property called Autopan Mode that allows you to see where you are in the field.

05:01So I'm going to go ahead and activate it.

05:03Now, of course, I'm simulating myself moving through the field.

05:07But what the autopan feature does is that it communicates with the GPS of your device, keeping you located on the map...

05:14...and also centers the map wherever you are.

05:17So that's that autopan feature.

05:21Okay. Another big advantage of native application development is that you can integrate third-party SDKs.

05:29And so that's what we've done here for this application.

05:32We've integrated a third-party SDK called the Zebra Crossing, and what it does is, it's a QR code reader.

05:39So I'm going to go ahead and start it.

05:41I'm just going to pick up the device here.

05:43As you can guess, I just happen to have a QR code.

05:46So I'm going to scan it. I'm just going to do this very.

05:49First I'm going to shut the application off, and then bring it back.

05:53Okay. So there are some people awake. That's good. Okay.

05:57So we're going to go ahead. We're going to scan this feature. Excellent.

06:02That QR code is a custom URI pointing to a feature in our map.

06:07We get at that feature. We display it on the map, and we also get at the attribute information.

06:13Okay. So just because I'm offline doesn't mean that I can't get my work done.

06:16So let's go ahead and inspect this feature.

06:19The SDK supports coded value domain, so I get a list here that I can choose from.

06:24I can also attach features. I can attach photos.

06:28I can attach videos, PDFs, et cetera.

06:31So this photo looks good, and actually this inspection looks good.

06:35So let's go ahead and we'll sign off on it and we'll save this inspection, tapping the check mark.

06:42So that's great. We've created a new feature.

06:44The problem is, is that this feature is only local to the device. No one else can see it.

06:49So, when we do get connectivity back, we can simply come back to our application and sync.

06:59So what we've done here is we've taken that new feature out of the cache, and we've posted it to a feature service.

07:05And now it's available for anybody to access and see throughout our whole organization.

07:10So, in summary, this application was built with our latest version of the SDK, 2.2, that's going to be available for you this week.

07:19However, most of the functionality I just showed you is available for you right now.

Copyright 2013 Esri
Auto Scroll (on)Enable or disable the automatic scrolling of the transcript text when the video is playing. You can save this option if you login

Building Applications with ArcGIS Runtime SDK for iOS

David Cardella shows a custom application built using ArcGIS Runtime SDK for iOS.

  • Recorded: Mar 26th, 2012
  • Runtime: 07:29
  • Views: 961
  • Published: Apr 19th, 2012
  • Night Mode (Off)Automatically dim the web site while the video is playing. A few seconds after you start watching the video and stop moving your mouse, your screen will dim. You can auto save this option if you login.
  • HTML5 Video (Off) Play videos using HTML5 Video instead of flash. A modern web browser is required to view videos using HTML5.
Download VideoDownload this video to your computer.
<Embed>Customize the colors and use the HTML code to include this video on your own website
480x270
720x405
960x540
Custom
Width:
Height:
Start From:
Player Color:

Right-click on these links to download and save this video.