BLOG
|
The ArcGIS Maps SDK for Swift Toolkit contains open-source components that will simplify your Swift app development. It is built off of the v200.5.0 version of the ArcGIS Maps SDK for Swift. This release includes the following new requirements, enhancements, and resolved issues. There are new System Requirements for this release. Enhancements in 200.5 Feature Form Attachments The Feature Form View now supports attachments. You can download and view existing attachments for a feature. You can also collect new attachments such as images or video from the camera or photos library, or other types of files on the device. You can also delete or rename existing attachments. Preparing for Swift 6 This release makes it easier for your apps to enable Swift Complete Strict Concurrency Checking and ultimately adopt the Swift 6 Language Mode. Updates include: - Fix warnings when building with `strict-concurrency` - Mark thread-safe types as conforming to `Sendable`. To learn more, see the Apple documentation on Sendable and the Swift 6 migration video from WWDC. Issues resolved - #706 - FloorFilter - NavigationStack incompatibility - #772 - Update API Key instructions. There are new instructions for using API Keys. - #780 - UtilityNetworkTraceViewModelTests.testCase_2_x, testCase_3_1 failures - #783 - FloorFilter: SiteAndFacility Manager appearing when panning map - #802 - Scalebar - unexpected exception You can find the Toolkit here. See this blog post for information on the latest ArcGIS Maps SDK for Native Apps release. We hope you enjoy the new release! Let us know what you're building with it.
... View more
08-19-2024
02:33 PM
|
2
|
0
|
171
|
BLOG
|
The ArcGIS Maps SDK for Swift Toolkit contains open-source components that will simplify your Swift app development. It is built off of the v200.2.0 version of the new ArcGIS Maps SDK for Swift and includes the following enhancements and fixes: Enhancements * Building for Mac Catalyst is now supported * Required Xcode version is now 14.1 * Documentation and tutorials are available from the Toolkit Reference in DocC format Issues resolved * Various improvements and fixes to the Authenticator * Support Compass use with SceneView (#326) * BasemapGallery - Clone basemap prior to setting to avoid "object already owned" error (#328) * Scalebar refactoring/improvements (#331) * Added keyboard avoidance support to Floating Panel (#380) and various other improvements * Add UI Testing App with UI test target and enhance testing of BasemapGallery, Bookmarks, and FloorFilter (#367) * Improve keyboard focus handling in the SearchView (#7), (#335) * Many other minor updates to accommodate Swift SDK changes, ease-of-use, bug fixes, and improved behavior You can find the Toolkit here. See this blog post for information on the latest ArcGIS Maps SDK for Native Apps release. We hope you enjoy the new release! Let us know what you're building with it.
... View more
08-16-2023
09:06 AM
|
0
|
0
|
462
|
POST
|
If you look at the "Terms of Use" in the item's description it says: Important Note: This item requires an ArcGIS Online organizational subscription or an ArcGIS Developer account and does not consume credits. To access this item, you'll need to do one of the following: Sign in with an account that is a member of an organizational subscription Sign in with a developer account Register an application and use your application's credentials. So you won't be able to use an API key. You do have a couple of other options. Depending on your use case, you can hard-code your user credentials in your app and have the service use those. let portal = AGSPortal.arcGISOnline(withLoginRequired: true)
portal.credential = AGSCredential(user: <#T##String#>, password: <#T##String#>)
portal.load() { [weak self] error in
let trafficItem = AGSPortalItem(portal: portal, itemID: "ff11eb5b930b4fabba15c47feb130de4")
let trafficLayer = AGSArcGISMapImageLayer(item: trafficItem)
self?.map.operationalLayers.add(trafficLayer)
} Or, you can follow the instructions to "Register an application". You can also find iOS SDK doc for security and authentication here. Mark
... View more
07-12-2023
08:44 AM
|
0
|
0
|
966
|
POST
|
Thank you for your question! The issue you're having is that the url points to a Map Service and the code above is attempting to load it as portal item. You have a couple of options, the first is to use the code you have, but use the World Traffic Service portal item and use an "AGSArcGISMapImageLayer" instead of a feature layer (because the item represents a map service): let trafficItem = AGSPortalItem(url: URL(string: "https://www.arcgis.com/home/item.html?id=ff11eb5b930b4fabba15c47feb130de4")!)!
let trafficLayer = AGSArcGISMapImageLayer(item: trafficItem) The second is to use the url you currently have, but instantiate an "AGSArcGISMapImageLayer", like below let trafficLayer = AGSArcGISMapImageLayer(url: URL(string:"https://traffic.arcgis.com/arcgis/rest/services/World/Traffic/MapServer")!)
map.operationalLayers.add(trafficLayer) Also, it is best practice to ALWAYS use "https" as opposed to simply "http" for security. You will need to log in with a named user to see the data. And if you haven't checked out our new Swift API, you can find it here! Let me know if you have any more issues! Mark
... View more
07-11-2023
10:08 AM
|
0
|
0
|
990
|
POST
|
Thank you for your question! You are not missing anything, there is no AR Toolkit component in the Swift Toolkit. However, it is on the roadmap, and we hope to have something released in the not-to-distant future. In order to ensure whatever we build meets your (and other customer's) needs, what kind of AR functionality are you looking to incorporate into an app? Indoors or outdoors? Do you have a specific type of data in mind? Are you going to be taking data offline? How accurate do you need the GPS to be, if you're doing a "real world" experience? Any information you can provide will help us determine the best features to include. Thank you! Mark
... View more
05-31-2023
09:26 AM
|
1
|
0
|
492
|
POST
|
I receive the following response from our offline team: One thing to check is that access controls does affect what replicas you see. You can only see your own replicas, so whatever user account was used in runtime to create a replica, you need to use the same account to view the replicas in rest calls. I recall the role matters too, so I think "admin" has extra powers and see all replicas for an AGOL service? Let me know if that helps or not. Mark
... View more
04-20-2023
09:26 AM
|
0
|
0
|
287
|
BLOG
|
The ArcGIS Maps SDK for Swift Toolkit contains open-source components that will simplify your iOS app development. It is built off of the v200.1.0 version of the new ArcGIS Maps SDK for Swift. It includes: - An architecture based on SwiftUI and the ArcGIS Maps SDK for Swift. - Eleven components, including a compass, scale bar, custom search view, general-purpose floating panel, Utility Network trace tool, floor filter, and popup view. - Support for iOS v15.0 and newer and Xcode 14.0 and newer. There have been a number of improvements since the Beta release, including: - `MapView` and `Sceneview` viewpoint changes are now animated. - The `FloorFilter` component now allows clients to get and set the selected site, facility, and level programmatically. - The `Authenticator` component has been improved based on changes to the Swift SDK. - Many other minor updates to accommodate Swift SDK changes, ease-of-use improvements, bug fixes, and improved behavior. You can find the Toolkit here. See this blog post for information on the SDK release. We hope you enjoy the new release! Let us know what you're building with it.
... View more
04-19-2023
11:37 AM
|
0
|
0
|
504
|
POST
|
Hello! Sorry for the delayed response, but we're getting ready to release the v200.1 version of the SDK today and this week has been pretty hectic. I've asked our offline team about the issue you're having and am just waiting for a response. As soon as I hear, I'll let you know. Mark
... View more
04-19-2023
08:58 AM
|
1
|
0
|
292
|
POST
|
Hello! Thank you for your question and I'm glad you found a solution. A legend or "layers list" is something that we will be implementing in the Swift Toolkit at some point, but there's no firm release date yet. In the meantime, you solution looks good! You can also take a look at the v100.15 Toolkit's LegendViewController, and the actual code. There are a few things in that code that may be of interest, depending on your requirements: - Including base maps in the layers list - Ensuring the Map and Layers are loaded prior to displaying the list - Displaying symbol swatches for layers - Hiding/showing scale-dependent layers depending on map scale (applicable primarily for Legends). Nice work! If you have any more questions, please reach out! Mark
... View more
04-07-2023
07:49 AM
|
1
|
1
|
872
|
POST
|
No problem, glad to help! Let me know when you find out more information and I'll look into it on our end. Have a good week! Mark
... View more
04-03-2023
07:33 AM
|
0
|
1
|
1374
|
POST
|
Where is the list of replicas being retrieved from? The "Geodatabase" has a "syncID" property, which the doc states is the same as the replica ID described in the REST documentation. This is used by the service that created the geodatabase to uniquely identify it when carrying out sync operations. You can use this ID to uniquely identify the replicas.
... View more
03-31-2023
08:32 AM
|
0
|
1
|
1387
|
POST
|
The "replicaName" property is not currently supported by Runtime. What is your use case for using the replica name?
... View more
03-30-2023
08:10 AM
|
0
|
1
|
1407
|
POST
|
Hello and thank you for your question. If you look at the REST API you reference, there's the following "replicaOptions": //(bit 0): Includes annotation features
{"syncDataOptions": 1}
//(bit 1): Includes dimension feature layers
{"syncDataOptions": 2}
//(bit 2): Includes contingent values
{"syncDataOptions": 4} For ease-of-use, these options are called out explicitly as properties in the GenerateGeodatabaseParameters object: @property (nonatomic, assign, readwrite) BOOL shouldSyncDimensions;
@property (nonatomic, assign, readwrite) BOOL shouldSyncContingentValues;
@property (nonatomic, assign, readwrite) BOOL shouldSyncAnnotations; The default value for those there properties are `YES`. From your post,'replicaOptions': '{ "syncDataOptions": 5 }' indicates that `shouldSyncAnnotations` and `shouldSyncContingentValues` are set to `YES`, as the "5" is the bitwise-Or of those two properties (as specified in the REST API) Setting those values to "NO" should give you the result you want. If you still encounter problems, please let us know. Also, what specific problems are you encountering. Thank you! Mark
... View more
03-29-2023
08:01 AM
|
1
|
4
|
1424
|
POST
|
Thank you to all who came to last week's Esri DevSummit, 2023. For those of you who attended the Thursday afternoon "Introduction to SwiftUI" demo theater, the code from the demo is now on GitHub. You can find it here. Let me know if you have any comments or questions! Mark
... View more
03-13-2023
03:47 PM
|
1
|
0
|
478
|
POST
|
When/where are you setting the `isExpanded` variable to false? SwiftUI should take care of that automatically when you click on the default chevron in the Disclosure Group header. Here's the code from the Toolkit for the FieldsPopupElement. https://github.com/Esri/arcgis-maps-sdk-swift-toolkit/blob/fb8b3e439537fe7bf38e4325e4ac781f9f61ea0a/Sources/ArcGISToolkit/Components/Popups/FieldsPopupElementView.swift#L34 If you still can't get it to work, sending a code snippet would be helpful in trying to debug it with you. Mark
... View more
01-27-2023
09:13 AM
|
0
|
0
|
881
|
Title | Kudos | Posted |
---|---|---|
2 | 08-19-2024 02:33 PM | |
1 | 05-31-2023 09:26 AM | |
1 | 04-19-2023 08:58 AM | |
1 | 04-07-2023 07:49 AM | |
1 | 03-29-2023 08:01 AM |
Online Status |
Offline
|
Date Last Visited |
08-21-2024
01:16 AM
|