|
POST
|
The maui dependency will automatically include the dependencies that gives you access to this. Here's a bit of code I was able to write in a blank maui app that adds just the Esri.ArcGISRuntime.Maui package:
... View more
12-19-2024
09:29 AM
|
0
|
1
|
2056
|
|
POST
|
No problem. You're fine to continue using the old ones until the next major release. The new classes are mostly there because we're working towards a common authentication codebase used across all the maps sdk platforms to improve consistency, faster improvements and only having to make fixes in one place (Swift and Kotlin SDKs already use it). That common underlying codebase is slightly different / modernized and we're building the design to match that before fully switching over in the next major release and removing the deprecated classes. So as long as you move over before that switch, you'll be fine.
... View more
12-19-2024
09:26 AM
|
1
|
0
|
880
|
|
POST
|
Sorry we're still working on updating the doc and blog on this. For now, feel free to ask questions here. You can also look at the changes made for one of the demo apps here: https://github.com/Esri/arcgis-maps-sdk-dotnet-demos/commit/a9d97dbb60728af8515a165108c50d9ce3ae192e Bottom line is the change is just a simplification around how you register the OAuth configuration.
... View more
12-18-2024
02:12 PM
|
0
|
2
|
896
|
|
POST
|
There property is in the namespace: `Esri.ArcGISRuntime.Controls.UI.SceneView` Make sure you place the code inside an #if __ANDROID__ section since the specific property is only available on the Android target.
... View more
12-18-2024
01:36 PM
|
0
|
3
|
751
|
|
POST
|
We could probably improve that error message a bit to make it more clear. I'll put that in the backlog.
... View more
12-17-2024
10:07 AM
|
0
|
0
|
637
|
|
POST
|
Something like this should work: private static string GetDisplayValue(Field field, Feature feature)
{
if (field is null || feature is null || !feature.Attributes.ContainsKey(field.Name))
return string.Empty;
var value = feature.Attributes[field.Name];
if (field.Domain is CodedValueDomain cvd)
{
value = cvd.CodedValues.FirstOrDefault(c => c.Code == value)?.Name ?? value;
}
return value?.ToString() ?? string.Empty;
}
... View more
12-17-2024
10:01 AM
|
0
|
0
|
532
|
|
POST
|
Unfortunately the Android platform makes implementing the scenario a lot harder and has to be done at the application level with the foreground service. There's not much we can really do at the API level, besides improving our documentation to help implement this.
... View more
12-16-2024
09:07 AM
|
1
|
0
|
954
|
|
POST
|
You must target net8.0-maccatalyst for this to work. Vanilla net8.0 is not supported on mac.
... View more
12-13-2024
12:59 PM
|
1
|
2
|
682
|
|
POST
|
Awesome! Glad you got it working and thank you for bringing this up - this made us realize we need to help with a little more guidance here, and are working on that now. Wrt iOS, note that there are a few specific properties on iOS only to enable background location on the SystemLocationDatasource. You'll need to put that code in an "#if __IOS__" section since it only applies to ios that will turn on backgrounding of location. See the doc here and the remarks:
https://developers.arcgis.com/net/api-reference/api/ios/Esri.ArcGISRuntime/Esri.ArcGISRuntime.Location.SystemLocationDataSource.AllowsBackgroundLocationUpdates.html
https://developers.arcgis.com/net/api-reference/api/ios/Esri.ArcGISRuntime/Esri.ArcGISRuntime.Location.SystemLocationDataSource.ActivityType.html
You shouldn't need to work with CLLocation directly.
... View more
12-12-2024
08:43 AM
|
4
|
3
|
5357
|
|
POST
|
We're working on a sample/tutorial/doc to help with this scenario. But take a look at Android's doc on this, especially foreground service (keeps app open in the background): https://developer.android.com/develop/background-work/services/fgs and background services: https://developer.android.com/develop/sensors-and-location/location/background (runs while app isn't running)
... View more
12-10-2024
12:23 PM
|
1
|
7
|
5395
|
|
POST
|
It was there but looks like it was accidentally unlisted. Should be all good now.
... View more
12-09-2024
03:57 PM
|
2
|
0
|
1296
|
|
POST
|
We've recently been made aware of a regression with older 32bit Android Armv7 devices and are still investigating, and it appears you're likely also hitting this. We're still trying to fully determine if this is an issue in the .NET runtime or the Maps SDK (it was introduced in 200.5, because of some newer code hitting this .NET bug).
... View more
12-04-2024
02:10 PM
|
2
|
4
|
2025
|
|
POST
|
Yes that's one thing you can do. You can also look at the `AdditionalSourceProperties` dictionary which will tell you a little more about how the location was obtained. See https://developers.arcgis.com/net/api-reference/api/android/Esri.ArcGISRuntime/Esri.ArcGISRuntime.Location.Location.AdditionalSourceProperties.html#Esri_ArcGISRuntime_Location_Location_AdditionalSourceProperties
Specifically the 'positionSource' key. Sometimes you might get a wifi or IP based location that you would want to ignore depending on use-case (note though that that should only happen if the device haven't been able to get a good GPS position in a while or the GPS position is estimated to be really really poor). I would be careful with using simplify. It could preserve points that are very much off-center and should at least be weighted against estimated accuracy. On a last note the Maps SDK doesn't do anything "smart" with the location (apart from switching between IP/Wifi and GPS positions as needed). It reports the GPS location as-received from the device.
... View more
12-04-2024
02:07 PM
|
1
|
0
|
2200
|
|
POST
|
You are correct there's no event like this currently.
You could use the GeoViewTapped event and compare the location of the tapped event to the location of the location display. I'd recommend using the screen location of the click event and convert the locationdisplay location to screen coordinates using MapView.LocationToScreen(location), so you can calculate in pixels how far away from the location the click was, and you can just set a threshold of the size of the symbol. This is all a pretty cheap calculation to make so shouldn't cause any overhead.
Something along the lines of( (not tested):
private void MapView_GeoViewTapped(object sender, GeoViewInputEventArgs e)
{
if ((sender as MapView)?.LocationDisplay?.Location?.Position is MapPoint location)
{
var screenLocation = mapView.LocationToScreen(location);
var distance = Math.Sqrt(Math.Pow(e.Position.X - screenLocation.X, 2) + Math.Pow(e.Position.Y - screenLocation.Y, 2));
if (distance < 12)
{
// You clicked location
}
}
}
... View more
12-02-2024
07:34 PM
|
0
|
0
|
458
|
|
POST
|
You can use the HorizontalAccuracy property of the location to check if you're getting a bad measurement and ignore it.
... View more
12-02-2024
07:23 PM
|
1
|
3
|
2255
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 12-19-2025 09:51 AM | |
| 1 | 12-04-2025 09:10 AM | |
| 1 | 12-01-2025 08:50 AM | |
| 1 | 11-17-2025 09:20 AM | |
| 1 | 11-14-2025 09:10 AM |
| Online Status |
Offline
|
| Date Last Visited |
yesterday
|