|
POST
|
Our routing and geocoding services don't support exporting for offline use. One option is to use Streetmap Premium for ArcGIS Runtime. That provides an MMPK with network model and geocoders included. You can download and use these for free during development, but they do incur a deployment cost for production use. Cheers, Nick.
... View more
10-30-2018
10:50 AM
|
2
|
2
|
2002
|
|
POST
|
Hi there. There is no clustering capability in the Runtime yet. We have discussed Clustering and it's on a list of future enhancements, but not scheduled for any release yet (I can pretty confidently say it won't be included in 2019). And unfortunately I haven't had time to update that repo to Runtime 100. I've had a couple of requests, but it's quite a bit of reworking to get it done and I just haven't had the time yet. I could help point you in the right direction if you wanted to take it on - I've had some thoughts about how it should be updated. Cheers, Nick
... View more
10-24-2018
06:48 PM
|
0
|
0
|
890
|
|
POST
|
Appreciate your patience Michael Hamsa, My reply above still stands: we're gunning for the next release of Runtime, in Q1/Q2 timeframe next year. Cheers, Nick.
... View more
10-18-2018
02:26 PM
|
0
|
5
|
3066
|
|
POST
|
Hey Michael Hamsa, I don't think we support that workaround for text. The examples I've seen have different layers for labeling defined at different scale ranges. Sorry I don't have a better answer for you! Nick
... View more
10-14-2018
11:39 AM
|
0
|
7
|
3066
|
|
POST
|
Hey Manasa Parida, I wonder if there's some confusion about the purpose of the Maps App here? The Runtime SDK does not offer a navigation experience (just a routing experience, i.e. we can get you directions, but you have to get yourself to your destination) and does not track you along a route that you've got planned. The Maps App doesn't add anything to that, so the fact that your location has deviated from the route, as in the screenshots above, is expected. You would need to add additional logic to your app if you want the location snapped to the route task result. One approach might be to write your own AGSLocationDataSource that you pass a route task result to and as your data source reads updated locations from Core Location, your custom data source snaps the results to the current route, returning those to the AGSLocationDisplay. That way the map view will show you on the route if you're nearby. I hope I've understood your question properly. I think the crux of it is that there's no relationship between the route task result that you're displaying and the device's displayed location, and that is as designed. Nick.
... View more
10-14-2018
11:27 AM
|
0
|
4
|
3018
|
|
POST
|
You could record a journey to a GPX file using GPS tracking software of your choice and then test your Runtime app using the AGSGPXLocationDataSource. Create a new instance of that pointing at your GPX file, then set your mapView.locationDisplay.dataSource to this new instance.
... View more
10-08-2018
10:42 AM
|
2
|
1
|
13324
|
|
POST
|
Glad it working for you, but that's odd. It shouldn't matter. I just tried to reproduce this with your original code and it adds features fine. Could you have made some other edit to the code in the meantime? Can you try setting self.pointFeatureLayer as in your original code again just as a sanity check?
... View more
09-28-2018
08:29 AM
|
1
|
0
|
2122
|
|
POST
|
Oh yes, I'm sorry. I missed the "self". You could do a couple of things to dig in. I assume the service URL is HTTPS and not HTTP. If it's HTTP, make sure your App Transport Security settings allow that. Turn on debugging on the global AGSRequestConfiguration to see what's being sent and what, if anything, is being returned. AGSRequestConfiguration.global().debugLogRequests = true
AGSRequestConfiguration.global().debugLogResponses = true Let me know what you find.
... View more
09-28-2018
05:13 AM
|
1
|
0
|
2122
|
|
POST
|
Hey John Bridges. The other URL was nearly there. This is just how we published the world routing service. We're working on better documentation to make this easier to discover. Cheers, Nick
... View more
09-27-2018
04:15 PM
|
0
|
1
|
1784
|
|
POST
|
Hi, Try using this URL: https://route.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World Also, take a look at this for an example of using the tasks. Let me know if that helps.
... View more
09-27-2018
11:45 AM
|
0
|
3
|
1784
|
|
POST
|
We don't have an alternate image property that you can just switch to when you click the marker. You would have to manually switch the symbol, and how you do that would depend on whether the marker comes from a feature service or is a graphic in a graphics overlay. There are a couple of possible approaches. You could manipulate the renderer on the layer to display that particular marker differently. How complex this approach is will depend on the renderer defined on the layer. In the simplest case, you would replace the layer's AGSSimpleRenderer with an AGSUniqueValueRenderer that has the default symbol as the old AGSSimpleRenderer's symbol, and a single AGSUniqueValue keyed off the feature's ObjectID to display only that feature differently. Add and remove AGSUniqueValues for each feature that is "toggled on". You could hide that marker (using setFeature:visible()) and use an AGSGraphicsOverlay to display the replacement marker. Depending on your requirements, you could use the Selection logic to highlight the marker (but it sounds like that won't suffice for you). If the marker is in an AGSGraphicsOverlay, then you could simply switch the symbol on the graphic. You could alternatively use a renderer and make sure each graphic in the overlay has an attribute that suitably drives the renderer, a bit like the first option above but with total control over the field used to drive things. There may be other approaches I haven't thought of. I've used the first approach myself and it works well, but only if you understand the original renderer.
... View more
09-27-2018
08:31 AM
|
1
|
1
|
2390
|
|
POST
|
As soon as your pointFeatureTable variable goes out of scope it'll be deallocated, and so there's nothing left to call back into your callback blocks. Try creating a class-level variable to keep your pointFeatureTable reference in, or derive it from a layer in the map (the map will keep a layer reference, and the layer will keep a table reference). See this sample, where the featureTable variable is defined at the class level, so will exist as long as the owning class does.
... View more
09-27-2018
08:20 AM
|
1
|
2
|
2122
|
|
POST
|
Hey Jake, In the 10.2.x Runtime (which Asif is using) that's what the AGSQueryTask does (plus it integrates with the credential cache). Just initialize it with a URL to the service, and start firing queries against it. The NSOperation you get back can be cancelled if need be. In the 100.x runtime, you can hold on to a reference to an AGSServiceFeatureTable that you load once and query against often (actually, you don't need to load it explicitly - any calls to query will take care of loading it). You don't need to create a layer from it or add it to a map. And when you run a query against it, you get back an AGSCancelable, which you can… as you might expect… cancel The only limitation is that you can't list specific fields for the query. There's a sort of workaround for that involving setting the featureRequestMode to manualCache and populating the table using the query and fields you're after, then querying the table (which will run off the local cache and return immediately), but that is admittedly a bit tricky and if you have parallel queries going on with different field sets you'd want to have separate table instances; one for each field set. Lastly, 10.2.x's AGSQuery.returnGeometry and 100.x's AGSQueryParameters.returnGeometry can be set to false to prevent geometry being returned. Asif: If you can't control CLLocationManager.distanceFilter, then in your locationUpdate handler you could use AGSGeometryEngine.distanceFromGeometry:toGeometry() to see how far the new point is from that last acceptable point, and only fire a query once the distance has reached a threshold. So, you're still getting as many updates from CoreLocation, but you're not firing queries off until you've moved a sensible amount. Also, in your sample code, before your "do" block, set up a "let trafficSpeedLayer = ..." there. Right now, as soon as your "do { }" block exits, your trafficSpeedLayer is being deallocated, and so the query callbacks have nothing to latch on to when they happen. Cheers, Nick
... View more
09-24-2018
09:38 PM
|
0
|
0
|
3515
|
|
POST
|
Hi. Thanks for the question. Please see if the reply to your other question here resolves the issue for you: https://community.esri.com/thread/221746-query-a-feature-layer-without-adding-the-layer-to-the-map#comment-801385 Nick.
... View more
09-24-2018
08:56 AM
|
0
|
0
|
1127
|
|
POST
|
Sounds like you are not holding on to the instance of the layer, so it's going out of scope and being destroyed before the query callback. When you add a layer to the map view, it's being retained by the map view so you're seeing results. Create an object property (rather than a function variable) to hold on to the layer reference and you will get the completion called. You only need to create one instance of the layer and can query it multiple times. You should not create an instance each time your location updates. Sounds like this could be causing the issue in your other question: Querying feature on device location change Nick.
... View more
09-24-2018
08:55 AM
|
0
|
1
|
3515
|
| Title | Kudos | Posted |
|---|---|---|
| 2 | 05-14-2026 07:07 AM | |
| 2 | 04-30-2026 10:59 AM | |
| 4 | 04-22-2026 08:07 AM | |
| 1 | 01-29-2026 09:39 AM | |
| 1 | 12-17-2025 10:12 AM |