AnsweredAssumed Answered

GenerateOfflineMapJob Export Tiles Request Fails on Xamarin.iOS

Question asked by matthew.pierce on Oct 19, 2018
Latest reply on Oct 29, 2018 by matthew.pierce

Creating a custom offline area in iOS using GenerateOfflineMapJob (Esri.ArcGISRuntime.Xamarin.iOS 100.3) appears to fail when using an ArcGISTiledLayer or ArcGISVectorTiledLayer in the basemap. Sample code is:

 

// Set up job

OfflineMapTask customAreaTask = await OfflineMapTask.CreateAsync(mapWithTiledBaseLayer);

GenerateOfflineMapJob generateJob = customAreaTask.GenerateOfflineMap(offlineParams, storagePath);

GenerateOfflineMapResult result = await generateJob.GetResultAsync();

 

// Check errors

bool hasLayerError = result.LayerErrors.Any(); // True on iOS

The resulting error message on the tiled base layer is (approximately): 'levels' parameter must be set

 

In looking at network requests through fiddler, the /exportTiles request to the basemap layer has no POST content parameters, only on iOS. Monitoring the same request when running (successfully) in UWP, I found settings for 'exportBy', 'exportExtent', 'levels', and 'tilePackage' parameters. Seems like they simply fail to get added during the generate job.

 

EDIT: Small correction to the sample code

Outcomes