{"id":2963262,"date":"2026-04-21T06:37:47","date_gmt":"2026-04-21T13:37:47","guid":{"rendered":"https:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=2963262"},"modified":"2026-04-21T06:37:47","modified_gmt":"2026-04-21T13:37:47","slug":"whats-new-in-arcgis-maps-sdks-for-native-apps-300-0","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0","title":{"rendered":"What\u2019s new in ArcGIS Maps SDKs for Native Apps 300.0"},"author":3811,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":""},"categories":[37101,738191],"tags":[],"industry":[],"product":[761642,769142,776202,768902,769152,768912,36601],"class_list":["post-2963262","blog","type-blog","status-publish","format-standard","hentry","category-announcements","category-developers","product-platform","product-sdk-net","product-sdk-flutter","product-sdk-kotlin","product-sdk-qt","product-sdk-swift","product-developers"],"acf":{"authors":[{"ID":3811,"user_firstname":"Nicholas","user_lastname":"Furness","nickname":"Nicholas Furness","user_nicename":"nfurness","display_name":"Nick Furness","user_email":"NFurness@esri.com","user_url":"http:\/\/developers.arcgis.com","user_registered":"2018-03-02 00:15:26","user_description":"Nick Furness is a Product Manager for the ArcGIS Maps SDKs for Native Apps, and ArcGIS Maps SDKs for Game Engines, specializing in Swift and iOS. He's spent over 25 years working in the GIS space building projects ranging from small mom-and-pop solutions all the way up to enterprise utility and national government deployments. Nick presents at various Esri Developer Summits, the User Conference, and many other events, almost always talking about something to do with the Native Maps SDKs (although you might find the odd bit of JavaScript thrown in there).","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2019\/01\/DevSummit-2013-Face-150x150.png' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"},{"ID":4091,"user_firstname":"Rex","user_lastname":"Hansen","nickname":"Rex Hansen","user_nicename":"rex-hansen","display_name":"Rex Hansen","user_email":"rhansen@esri.com","user_url":"","user_registered":"2018-03-02 00:15:41","user_description":"Rex Hansen is a Product Manager for the ArcGIS Maps SDKs for Native Apps and ArcGIS Maps SDKs for Game Engines.  He has over 25 years of experience in GIS, spatial analytics, and computer mapping.  Currently, he guides the development of native technologies in the GIS industry to use authoritative geospatial content and analysis in offline workflows, photorealistic experiences, and immersive, extended reality solutions.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2024\/11\/RexHansen1200x1200-465x465.png' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"},{"ID":5171,"user_firstname":"Michael","user_lastname":"Branscomb","nickname":"Mike Branscomb","user_nicename":"mbranscomb","display_name":"Mike Branscomb","user_email":"MBranscomb@esri.com","user_url":"https:\/\/developers.arcgis.com\/","user_registered":"2018-03-02 00:16:51","user_description":"Mike Branscomb is a Product Manager for the ArcGIS Maps SDKs for Native Apps and ArcGIS Maps SDKs for Game Engines. With over 20 years of experience working in the Esri ecosystem, he specializes in .NET, Local Server, and 3D Scene Layers. Mike is also a Scrum Product Owner with over 10 years of experience guiding teams through the product development lifecycle.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/ProfilePhotoMB-465x465.jpg' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"},{"ID":276952,"user_firstname":"Shimona","user_lastname":"Lahiri","nickname":"Shimona Lahiri","user_nicename":"shimona-lahiri","display_name":"Shimona Lahiri","user_email":"slahiri@esri.com","user_url":"","user_registered":"2021-09-14 16:48:37","user_description":"Shimona is a product marketer working with ArcGIS Maps SDKs for Game Engines and Native Apps. With an undergrad degree in Psychology and an M.S. in Marketing, she is a digital marketing polymath and loves to craft interesting stories for her audience to enjoy.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/01\/Profile-pic-465x465.jpeg' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"}],"short_description":"ArcGIS Maps SDKs for Native Apps 300.0 adds key new features including local scenes, building scene layer, and high-performance spatial analysis.","flexible_content":[{"acf_fc_layout":"content","content":"<p>The ArcGIS Maps SDKs for Native Apps 300.0 release is a significant milestone for the SDKs. We\u2019re delivering important new functionality, including capabilities that are entirely new to mobile SDKs and enable a whole new category of GIS apps.<\/p>\n<p>As we move from 200.8 to 300.0, the focus is on expanding capabilities, with three major additions marking important milestones for the Native Maps SDKs: local scenes, building scene layers, and a brand new set of spatial analysis tools.<\/p>\n"},{"acf_fc_layout":"content","content":"<h2>Local scene<\/h2>\n<p>The Native Maps SDKs have supported 3D since 100.0 (some ten years ago), but always in a global context. This means using the WGS84 geographic coordinate system to display data, and for best performance, that generally means the data should also be published in WGS84 so it does not need to be reprojected on the fly. Reprojection consumes CPU resources, which on mobile devices can lead to faster battery drain. Publishing a separate copy of the data in WGS84 helps avoid that, but it often adds unwanted overhead.<\/p>\n<p>Enter <em>local scene view<\/em>. This is a completely new UI component that you can add to your app, enabling you to work with a local scene, whether it comes from a web scene, an on-device mobile scene package, or created programmatically in code. A local scene can use any projected coordinate system, matching your published data and local workflows.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2963279,"id":2963279,"title":"A local scene, clipped to an extent","filename":"image-24.png","filesize":650271,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/image-24.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\/image-24-3","alt":"Local scene overview","author":"3811","description":"","caption":"A local scene, clipped to an extent","name":"image-24-3","status":"inherit","uploaded_to":2963262,"date":"2026-04-21 01:24:46","modified":"2026-04-21 01:25:22","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1038,"height":596,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/image-24-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/image-24.png","medium-width":455,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/image-24.png","medium_large-width":768,"medium_large-height":441,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/image-24.png","large-width":1038,"large-height":596,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/image-24.png","1536x1536-width":1038,"1536x1536-height":596,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/image-24.png","2048x2048-width":1038,"2048x2048-height":596,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/image-24-810x465.png","card_image-width":810,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/image-24.png","wide_image-width":1038,"wide_image-height":596}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>Local scene view is built from the ground up to make the best possible use of modern GPU pipelines, which delivers some key benefits:<\/p>\n<ul>\n<li>We\u2019ve optimized performance by separating data management from data rendering, allowing CPUs and GPUs to focus on what they do best, and in doing so reducing load and battery drain.<\/li>\n<li>This allows us to be more efficient with our memory handling, responding to complex scenes and memory pressure in more effective ways. For example, we can now distinguish between memory pressure caused by complex data and memory pressure caused by large volumes of data, and respond differently to each.<\/li>\n<li>The new pipeline can leverage optimizations that are inbuilt with 3D data, like multi-LOD symbols, to display the best fidelity data for a given device, scene, and viewpoint.<\/li>\n<li>This new pipeline also lets us honor modern glTF Physically Based Rendering (PBR) such as materials, emissions, ambient occlusion, and more to make your data really shine.<\/li>\n<\/ul>\n<p>All of this combines to deliver better performance AND a better-looking view of your data AND better battery life on mobile devices.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2963280,"id":2963280,"title":"glTS PBR emissions","filename":"Emissions-timelapse_800_15fps.gif","filesize":6560701,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/Emissions-timelapse_800_15fps.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\/emissions-timelapse_800_15fps","alt":"glTF PBR Emissions in the Native SDKs","author":"3811","description":"","caption":"glTF PBR emissions support in the new Native Maps SDKs local scene view.","name":"emissions-timelapse_800_15fps","status":"inherit","uploaded_to":2963262,"date":"2026-04-21 01:36:29","modified":"2026-04-21 01:58:38","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":800,"height":292,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/Emissions-timelapse_800_15fps-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/Emissions-timelapse_800_15fps.gif","medium-width":464,"medium-height":169,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/Emissions-timelapse_800_15fps.gif","medium_large-width":768,"medium_large-height":280,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/Emissions-timelapse_800_15fps.gif","large-width":800,"large-height":292,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/Emissions-timelapse_800_15fps.gif","1536x1536-width":800,"1536x1536-height":292,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/Emissions-timelapse_800_15fps.gif","2048x2048-width":800,"2048x2048-height":292,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/Emissions-timelapse_800_15fps.gif","card_image-width":800,"card_image-height":292,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/Emissions-timelapse_800_15fps.gif","wide_image-width":800,"wide_image-height":292}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<h3>New scene APIs<\/h3>\n<p>A handful of new APIs support the local scene view, delivering capabilities defined in the <a href=\"https:\/\/developers.arcgis.com\/web-scene-specification\/\">web scene specification<\/a>.<\/p>\n<ul>\n<li>Scenes now include a property describing the scene viewing mode: \u201clocal\u201d or \u201cglobal\u201d. This is read from a web scene or mobile scene or, if you\u2019re constructing a scene in code, can be specified in the scene\u2019s constructor. And if you don\u2019t specify a scene\u2019s viewing mode, we\u2019ll assume it\u2019s global so your existing 200.x code will continue to work unchanged.<\/li>\n<li>Environment rendering control is now defined on the scene itself.<\/li>\n<li>Local scenes let you define a clipping area to limit your app experience to an area of interest.<\/li>\n<\/ul>\n<p>There are also new events that alert you if you\u2019re trying to use a global scene in a local scene view, or a local scene in a global scene view, or when the local scene view is responding to memory pressure.<\/p>\n<p>As a new component, there are some capabilities missing from the local scene view. For example, this first release focuses on 3D content and doesn\u2019t yet support feature layers or graphics overlays. You can learn more about these discrepancies, and our plans to resolve them in the scene views documentation for <a href=\"https:\/\/developers.arcgis.com\/net\/scenes-3d\/#scene-views\">.NET<\/a>, <a href=\"https:\/\/developers.arcgis.com\/flutter\/scenes-3d\/#scene-views\">Flutter<\/a>, <a href=\"https:\/\/developers.arcgis.com\/kotlin\/scenes-3d\/#scene-views\">Kotlin<\/a>, <a href=\"https:\/\/developers.arcgis.com\/qt\/scenes-3d\/#scene-views\">Qt<\/a>, and <a href=\"https:\/\/developers.arcgis.com\/swift\/scenes-3d\/#scene-views\">Swift<\/a> SDKs.<\/p>\n<p>This new local scene experience is built on the same tried and tested pipelines that have been powering the ArcGIS Maps SDKs for Unity and Unreal Engine since 2022. And that\u2019s the secret to how we\u2019re able to deliver the next new milestone feature of the 300.0 SDK\u2026<\/p>\n"},{"acf_fc_layout":"content","content":"<h2>Building scene layer<\/h2>\n<p>Building scene layer is a 3D layer type that\u2019s key to AEC workflows, representing complex building information models in a fine-grained, high-performance experience, and is now available for the first time as part of the Native SDKs\u2019 new local scene experience. Not only do building scene layers look amazing, but they also allow you drill down into the individual components of your complex building models, both visually and by providing API access to the underlying data.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2963281,"id":2963281,"title":"building scene layer","filename":"building-scene-layer-release-notes.png","filesize":231257,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/building-scene-layer-release-notes.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\/building-scene-layer-release-notes","alt":"A building scene layer","author":"3811","description":"","caption":"Looking inside a building scene layer in the Native Maps SDKs","name":"building-scene-layer-release-notes","status":"inherit","uploaded_to":2963262,"date":"2026-04-21 01:39:55","modified":"2026-04-21 01:58:52","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":995,"height":668,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/building-scene-layer-release-notes-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/building-scene-layer-release-notes.png","medium-width":389,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/building-scene-layer-release-notes.png","medium_large-width":768,"medium_large-height":516,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/building-scene-layer-release-notes.png","large-width":995,"large-height":668,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/building-scene-layer-release-notes.png","1536x1536-width":995,"1536x1536-height":668,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/building-scene-layer-release-notes.png","2048x2048-width":995,"2048x2048-height":668,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/building-scene-layer-release-notes-693x465.png","card_image-width":693,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/building-scene-layer-release-notes.png","wide_image-width":995,"wide_image-height":668}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>Xray and Wireframe modes allow you to easily peer into your building model, but you can also control which layers, and even which features within each layer are displayed. You can select and identify features in your building model to read attributes and display callouts for those features. You can modify renderers for each sublayer in the model on the fly to highlight specific layers or features. And if your building models are configured with glTF PBR capabilities like materials and emissions, then those are beautifully rendered for you, even considering shadows and the time of day.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2963298,"id":2963298,"title":"Building scene layer with glTF materials and emissions","filename":"bsl-with-pbr-emissions-small.jpg","filesize":218706,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/bsl-with-pbr-emissions-small.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\/bsl-with-pbr-emissions-small","alt":"Building scene layer with glTF materials and emissions","author":"3811","description":"","caption":"A building scene layer authored with glTF materials and emissions properties so lights glow at night.","name":"bsl-with-pbr-emissions-small","status":"inherit","uploaded_to":2963262,"date":"2026-04-21 02:49:01","modified":"2026-04-21 02:49:56","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1400,"height":924,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/bsl-with-pbr-emissions-small-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/bsl-with-pbr-emissions-small.jpg","medium-width":395,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/bsl-with-pbr-emissions-small.jpg","medium_large-width":768,"medium_large-height":507,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/bsl-with-pbr-emissions-small.jpg","large-width":1400,"large-height":924,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/bsl-with-pbr-emissions-small.jpg","1536x1536-width":1400,"1536x1536-height":924,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/bsl-with-pbr-emissions-small.jpg","2048x2048-width":1400,"2048x2048-height":924,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/bsl-with-pbr-emissions-small-705x465.jpg","card_image-width":705,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/bsl-with-pbr-emissions-small.jpg","wide_image-width":1400,"wide_image-height":924}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>Whether you want to hide all the walls, view only the electric infrastructure, or focus just on the third floor of your building, the building scene layer APIs give you full control over the experience you deliver.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2963284,"id":2963284,"title":"BSL explorer-hold","filename":"BSL-explorer-hold.gif","filesize":6653195,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/BSL-explorer-hold.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\/bsl-explorer-hold","alt":"Exploring a building scene layer","author":"3811","description":"","caption":"Exploring a building scene layer with the new open-source Building Scene Layer Explorer toolkit component.","name":"bsl-explorer-hold","status":"inherit","uploaded_to":2963262,"date":"2026-04-21 01:55:59","modified":"2026-04-21 01:56:48","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":879,"height":897,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/BSL-explorer-hold-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/BSL-explorer-hold.gif","medium-width":256,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/BSL-explorer-hold.gif","medium_large-width":768,"medium_large-height":784,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/BSL-explorer-hold.gif","large-width":879,"large-height":897,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/BSL-explorer-hold.gif","1536x1536-width":879,"1536x1536-height":897,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/BSL-explorer-hold.gif","2048x2048-width":879,"2048x2048-height":897,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/BSL-explorer-hold-456x465.gif","card_image-width":456,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/BSL-explorer-hold.gif","wide_image-width":879,"wide_image-height":897}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>To accompany the new building scene layer, we\u2019re also releasing a brand-new toolkit component to explore your building scene layer in detail, providing control over the floors and each sub layer of your model. Initially available for the Flutter and Swift SDKs, it will make its way to other SDKs in the next few releases.<\/p>\n<p>Learn more and see local scenes and building scene layers in action in the video below taken from the 2026 Esri Developer &amp; Technology Summit plenary session.<\/p>\n"},{"acf_fc_layout":"kaltura","video_id":"1_l5r0ae8v","time":true,"start":"683","stop":"869"},{"acf_fc_layout":"content","content":"<h2>Spatial analysis tools<\/h2>\n<p>The third major new component of the 300 SDKs is a brand-new set of spatial analysis tools.<\/p>\n<p>Built from scratch to work with your data at its full resolution, these tools are lightning-fast, delivering results that you can use for decision-making, store on device for later, or simply display on screen. In fact, the tools are so fast that you can often even use them interactively.<\/p>\n<p>These tools work across the range of target platforms and device types supported by the Native Maps SDKs. Not just desktops and laptops, but also tablets and phones. Having this kind of high-precision and high-performance analytic capability in the palm of your hand is revolutionary and unlocks a category of apps that it\u2019s never been possible to build before.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2963286,"id":2963286,"title":"Viewshed drone animation","filename":"viewshed-drone-anim.gif","filesize":4635949,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/viewshed-drone-anim.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\/viewshed-drone-anim","alt":"Multiple viewshed","author":"3811","description":"","caption":"Viewsheds from multiple drones being updated in realtime, and incorporating land use categories.","name":"viewshed-drone-anim","status":"inherit","uploaded_to":2963262,"date":"2026-04-21 01:59:22","modified":"2026-04-21 02:00:34","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":764,"height":424,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/viewshed-drone-anim-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/viewshed-drone-anim.gif","medium-width":464,"medium-height":258,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/viewshed-drone-anim.gif","medium_large-width":764,"medium_large-height":424,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/viewshed-drone-anim.gif","large-width":764,"large-height":424,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/viewshed-drone-anim.gif","1536x1536-width":764,"1536x1536-height":424,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/viewshed-drone-anim.gif","2048x2048-width":764,"2048x2048-height":424,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/viewshed-drone-anim.gif","card_image-width":764,"card_image-height":424,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/viewshed-drone-anim.gif","wide_image-width":764,"wide_image-height":424}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>The initial set of spatial analysis tools include:<\/p>\n<ul>\n<li>Viewshed and line-of-sight visibility analysis<\/li>\n<li>A powerful and flexible map algebra API<\/li>\n<li>An analysis overlay for interactive workflows<\/li>\n<\/ul>\n"},{"acf_fc_layout":"content","content":"<h3>On-device analysis in the Native SDKs<\/h3>\n<p>Let\u2019s take a quick look at where this new toolset fits into the existing analysis capabilities of the Native Maps SDKs. The SDKs have long provided fast on-device analysis capabilities that work on local data, fully offline. These fit into four general categories:<\/p>\n<ul>\n<li>Dataset-based analysis: geocoding, network analysis, utility network trace<\/li>\n<li>Geometry analysis: compare, relate, manipulate, and reproject geographic points, lines, and polygons using the geometry engine<\/li>\n<li>Exploratory 3D visual analysis<\/li>\n<li>Local server<\/li>\n<\/ul>\n<p>To perform precise on-device spatial analysis you\u2019ve had two options: local server, or geometry engine. Geometry engine is perfect if you are simply working with discrete geometries. Local server enables more complex spatial analysis involving full datasets, elevation, and custom logic, but you need to be running Windows or Linux, and you need to install and maintain Local Server separately alongside your app.<\/p>\n<p>To perform fast and\/or interactive analysis, you\u2019ve been able to use exploratory 3D viewshed and line-of-sight analysis overlays. These run on the GPU for excellent performance, but they have clearly defined limitations: crucially, they can only work on the data that\u2019s currently visible on screen, and only to the resolution of that data as rendered, plus the analysis is visual only (i.e. there\u2019s no output you can make decisions from). And they require a 3D scene view to be visible to use them.<\/p>\n<p>That changes today. The new spatial analysis tools add a fifth category to the list above, combining the best of both worlds: precision and speed.<\/p>\n<p>They work with your source data at its full resolution, and while they use the GPU for optimized lightning-fast execution, it&#8217;s an entirely dedicated GPU pipeline, separate from the one used to render data to screen. The APIs also output precise analysis results which you can use however you like: you can display them, use them for further analysis, interrogate them to make decisions, or simply save them to disk.<\/p>\n"},{"acf_fc_layout":"content","content":"<h3>Exploring the new spatial analysis APIs<\/h3>\n<p>At a high level, this is how you use the new APIs:<\/p>\n<ol>\n<li>Load some source data<\/li>\n<li>Build a sequence of analysis operations<\/li>\n<li>Perform the analysis (or show the analysis as an overlay)<\/li>\n<\/ol>\n<p>The analysis operations can be the Viewshed or Line-of-sight tools, or any of the map algebra operators, or some combination of these. In the animation above, you&#8217;re looking at multiple viewsheds calculated from elevation data, where map algebra is then used to augment the viewshed results with forested land from a separate land use raster.<\/p>\n<p>In the following code snippet, elevation data is classified into four categories, which we can then display using a color map.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2963295,"id":2963295,"title":"Classifying elevation with Swift","filename":"map-algebra-reclassify-combo-scaled.png","filesize":952035,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/map-algebra-reclassify-combo-scaled.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\/map-algebra-reclassify-combo","alt":"Classify swift code","author":"3811","description":"","caption":"Using the new map algebra API in Swift to classify elevation into categories.","name":"map-algebra-reclassify-combo","status":"inherit","uploaded_to":2963262,"date":"2026-04-21 02:43:21","modified":"2026-04-21 02:43:50","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":2560,"height":1027,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/map-algebra-reclassify-combo-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/map-algebra-reclassify-combo-scaled.png","medium-width":464,"medium-height":186,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/map-algebra-reclassify-combo-scaled.png","medium_large-width":768,"medium_large-height":308,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/map-algebra-reclassify-combo-scaled.png","large-width":1920,"large-height":770,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/map-algebra-reclassify-combo-1536x616.png","1536x1536-width":1536,"1536x1536-height":616,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/map-algebra-reclassify-combo-2048x821.png","2048x2048-width":2048,"2048x2048-height":821,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/map-algebra-reclassify-combo-826x331.png","card_image-width":826,"card_image-height":331,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/map-algebra-reclassify-combo-1920x770.png","wide_image-width":1920,"wide_image-height":770}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/map-algebra-reclassify-combo-scaled.png"},{"acf_fc_layout":"content","content":"<p>Behind the scenes, as you build your analysis by combining various operations, the APIs prepare an optimized GPU compute pipeline from those operations. Crucially, that pipeline is not executed until you explicitly request the result. In technical terms, we are combining <em>lazy evaluation<\/em> and <em>operation fusion<\/em> on your analysis operations. This approach allows the APIs to optimize analysis by combining operations before execution, reducing both processing time and memory use by avoiding the need to calculate or store intermediate results.<\/p>\n<p>One of the most noticeable aspects of this approach is that you can simply modify parameters that are used anywhere in your sequence of operations, and the changes are immediately reflected in the optimized pipeline. For example, if a line-of-sight observer moves, simply update the location you provided when you defined the analysis, and the next time you ask for the analysis result, it will reflect this updated location. If you\u2019re using the analysis overlay to display your analysis on a map, the overlay display will automatically update the moment you provide the updated location.<\/p>\n<p>In this video below, we&#8217;re setting up a number of line-of-sight analyses from a single observer, and by updating that one observer location, all analyses are updated (and notice how quickly!).<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2963293,"id":2963293,"title":"Line of sight timings","filename":"LOS-Timings-cropped.gif","filesize":6851965,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/LOS-Timings-cropped.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\/los-timings-cropped","alt":"Line of sight speed","author":"3811","description":"","caption":"Testing the performance of the line-of-sight analysis - 1000 sightlines calculated in 5ms.","name":"los-timings-cropped","status":"inherit","uploaded_to":2963262,"date":"2026-04-21 02:33:51","modified":"2026-04-21 02:35:00","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":800,"height":460,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/LOS-Timings-cropped-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/LOS-Timings-cropped.gif","medium-width":454,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/LOS-Timings-cropped.gif","medium_large-width":768,"medium_large-height":442,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/LOS-Timings-cropped.gif","large-width":800,"large-height":460,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/LOS-Timings-cropped.gif","1536x1536-width":800,"1536x1536-height":460,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/LOS-Timings-cropped.gif","2048x2048-width":800,"2048x2048-height":460,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/LOS-Timings-cropped.gif","card_image-width":800,"card_image-height":460,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/LOS-Timings-cropped.gif","wide_image-width":800,"wide_image-height":460}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>Probably the best way to understand these new spatial analysis APIs is to see them in action. Watch the plenary demo below from the 2026 Esri Developer &amp; Technology Summit. And check out the map algebra, analysis overlay, and line of sight analysis samples for <a href=\"https:\/\/developers.arcgis.com\/net\/wpf\/sample-code\/\">.NET<\/a>, <a href=\"https:\/\/developers.arcgis.com\/flutter\/sample-code\/\">Flutter<\/a>, <a href=\"https:\/\/developers.arcgis.com\/flutter\/sample-code\/\">Kotlin<\/a>, <a href=\"https:\/\/developers.arcgis.com\/qt\/cpp\/sample-code\/\">Qt<\/a>, and <a href=\"https:\/\/developers.arcgis.com\/swift\/sample-code\/\">Swift<\/a> SDKs (if samples are missing for an SDK, they&#8217;re coming soon!).<\/p>\n"},{"acf_fc_layout":"kaltura","video_id":"1_l5r0ae8v","time":true,"start":"883","stop":""},{"acf_fc_layout":"content","content":"<h3>Licensing the analysis APIs<\/h3>\n<p>To align these new Native Maps SDKs analysis capabilities with Local Server and ArcGIS Pro capabilities, the new viewshed and line-of-sight APIs are licensed at the Standard level, while the map algebra operations require the Analysis extension.\u00a0 Of course, you can explore all the APIs free of charge in developer mode.<\/p>\n<h3>What\u2019s next for analysis?<\/h3>\n<p>This is just the start of the journey for these powerful new analysis capabilities.\u00a0 \u00a0More tools are in the pipeline (starting with slope, aspect, and raster to polygon), and we\u2019re prioritizing our development based off your feedback, since these tools support developers migrating their apps from Local Server and ArcGIS Engine. Expect to see more analysis capabilities with each upcoming release.<\/p>\n"},{"acf_fc_layout":"content","content":"<h2>Licensing updates<\/h2>\n<p>There\u2019s one more noteworthy change introduced with the 300.0 release, and that\u2019s around using license strings to license the Native Maps SDKs for use in production.<\/p>\n<p>As a reminder, there are two ways to license your Native Maps SDKs app for production use: named user licensing (where your app\u2019s end user will sign in to their ArcGIS Online or ArcGIS Enterprise account), and license strings (where you as the app developer embed or reference a fixed license string in your app).<\/p>\n<p>If you\u2019re using named users, nothing changes.\u00a0 However, at 300.0 we\u2019re refining the use of license strings.\u00a0 Specifically, starting with 300.0, license strings are now major version-locked. You can still use the same 100.x license string with all 100.x and 200.x SDK releases, but to use the 300.x SDKs you will need new 300.x license strings.<\/p>\n<p>If you\u2019re using the free Lite license, simply get a new 300.x Native Maps SDK Lite license string from <a href=\"https:\/\/my.esri.com\">My Esri<\/a>.\u00a0 You can retrieve your Lite license string from the &#8220;ArcGIS Maps SDKs for Native Apps License Strings&#8221; card on your My Esri dashboard&#8217;s Overview page.\u00a0 If you see a message that states &#8220;Your active ArcGIS Organizational account is not enabled for esri.com websites&#8221;, please contact your ArcGIS org&#8217;s administrator to enable access -or- determine an approach for distributing Lite license strings.<\/p>\n<p>If you\u2019re using Basic, Standard, or Advanced license strings (or extension license strings), you will need to obtain 300.x license strings before you can deploy your apps using the 300.x SDKs. You can obtain these from Esri customer service or your local distributor. These new strings are issued at no cost if you\u2019re current on maintenance.\u00a0 If not, please contact your Esri account manager or Esri customer service.<\/p>\n"},{"acf_fc_layout":"content","content":"<h2>But wait, there\u2019s more\u2026<\/h2>\n<p>While local scene, building scene layer, and the new spatial analysis tools are the key new capabilities of the 300.0 SDKs, the team has been hard at work on a whole range of new and improved functionality. Let&#8217;s pick out a few highlights.<\/p>\n<p>One significant area is improved support for true curves. At 300.0 we take true curves offline by default, support displaying them in 3D, and have added initial true curve support to the Geometry Editor.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2963305,"id":2963305,"title":"Editing curves with the geometry editor","filename":"geometry-editor-curve-anim.gif","filesize":18047487,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/geometry-editor-curve-anim.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\/geometry-editor-curve-anim","alt":"Editing curves with the geometry editor","author":"3811","description":"","caption":"The new curve editing capabilities of the geometry editor.","name":"geometry-editor-curve-anim","status":"inherit","uploaded_to":2963262,"date":"2026-04-21 03:18:36","modified":"2026-04-21 03:19:07","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":500,"height":500,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/geometry-editor-curve-anim-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/geometry-editor-curve-anim.gif","medium-width":261,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/geometry-editor-curve-anim.gif","medium_large-width":500,"medium_large-height":500,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/geometry-editor-curve-anim.gif","large-width":500,"large-height":500,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/geometry-editor-curve-anim.gif","1536x1536-width":500,"1536x1536-height":500,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/geometry-editor-curve-anim.gif","2048x2048-width":500,"2048x2048-height":500,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/geometry-editor-curve-anim-465x465.gif","card_image-width":465,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/geometry-editor-curve-anim.gif","wide_image-width":500,"wide_image-height":500}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>We have also improved our raster support, adding new color map and color ramp capabilities, improving the way we handle raster interpolation for various workflows, and exposing additional raster metadata to help you view rasters at the best scale for their content.<\/p>\n<p>We\u2019ve added support for shared templates by reading and using feature templates, preset templates, and group templates from feature services and geodatabases. Shared templates are commonly used in utility networks but can be useful in any number of data creation workflows. Preset templates let you place a number of new features in a predetermined pattern around a single location (for example, placing a fixed arrangement of picnic tables and trash cans around a point), while group templates let you apply complex predefined builder rules using a base geometry (for example, placing a trailhead, mileposts, and benches at preconfigured intervals along a polyline). And feature templates allow you to automatically create related records alongside a new feature.<\/p>\n<p>Working with utility network associations in feature forms is further enhanced with built-in association creation, editing, and deletion.<\/p>\n<p>The navigation APIs can now work with pedestrian routes (previously, the heuristics would assume you were driving). When in pedestrian mode, the RouteTracker will change how it determines when you\u2019ve arrived, how it calculates ETAs to account for walking speeds, when events are raised for upcoming maneuvers, considers u-turns at any point along the route (not just at junctions), and more.<\/p>\n"},{"acf_fc_layout":"content","content":"<p>And 300.0 also includes the following enhancements, as well as numerous performance improvements and bug fixes:<\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>Better support for Google Photorealistic 3D Tiles<\/li>\n<li>Better support for large attachments in feature forms, up to 1Gb<\/li>\n<li>Querying dynamic entities by track ID<\/li>\n<li>Change a map\u2019s spatial reference<\/li>\n<li>Various accessibility improvements, including Accessibility Conformance Reports (ACRs) for all SDKs<\/li>\n<li>A new API for calculating elevation for multiple points at once (e.g. for calculating elevation profiles)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n"},{"acf_fc_layout":"image","image":{"ID":2963304,"id":2963304,"title":"elevation profile","filename":"elevation-profile.png","filesize":480156,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/elevation-profile.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\/elevation-profile-3","alt":"Elevation profile with the new surface API","author":"3811","description":"","caption":"Calculating an elevation profile along a polyline using the new applyElevation() method on surface.","name":"elevation-profile-3","status":"inherit","uploaded_to":2963262,"date":"2026-04-21 03:15:32","modified":"2026-04-21 03:16:47","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":798,"height":516,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/elevation-profile-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/elevation-profile.png","medium-width":404,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/elevation-profile.png","medium_large-width":768,"medium_large-height":497,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/elevation-profile.png","large-width":798,"large-height":516,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/elevation-profile.png","1536x1536-width":798,"1536x1536-height":516,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/elevation-profile.png","2048x2048-width":798,"2048x2048-height":516,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/elevation-profile-719x465.png","card_image-width":719,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/elevation-profile.png","wide_image-width":798,"wide_image-height":516}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<ul>\n<li>S63 encrypted electronic nautical charts are now supported by the Qt SDK across all supported platforms<\/li>\n<li>KML layers now support KML Photo Overlays<\/li>\n<li>Initial support for oriented imagery layers<\/li>\n<li>Forward proxy support in the Kotlin SDK<\/li>\n<li>New iOS 26 backgrounding APIs supported by the Swift SDK<\/li>\n<li>A significant step towards <a href=\"https:\/\/developers.arcgis.com\/flutter\/parity\/\">Flutter SDK parity<\/a>, delivering dynamic entities, utility network, labeling APIs, feature reduction APIs, and callouts<\/li>\n<li>The .NET Maps SDK <a href=\"https:\/\/support.esri.com\/en-us\/knowledge-base\/deprecation-arcgis-maps-sdk-for-net-000038832\">drops support<\/a> for .NET Framework, UWP, and Windows-x86<\/li>\n<\/ul>\n<p>And much more, we just don&#8217;t have space to cover here, so review the release notes for the <a href=\"https:\/\/developers.arcgis.com\/net\/release-notes\/release-notes-for-300-0\/\">.NET<\/a>, <a href=\"https:\/\/developers.arcgis.com\/flutter\/release-notes\/release-notes-for-300-0\/\">Flutter<\/a>, <a href=\"https:\/\/developers.arcgis.com\/kotlin\/release-notes\/release-notes-for-300-0\/\">Kotlin<\/a>, <a href=\"https:\/\/developers.arcgis.com\/qt\/release-notes\/release-notes-for-300-0\/\">Qt<\/a>, and <a href=\"https:\/\/developers.arcgis.com\/swift\/release-notes\/release-notes-for-300-0\/\">Swift<\/a> SDKs for more details.<\/p>\n"},{"acf_fc_layout":"content","content":"<h2>Conclusion<\/h2>\n<p>This is a huge release for the Native SDKs, with major new functionality that will pave the way for the next few years of your Native app development, and we\u2019re proud to be able to put it in your hands for production use. Watch this space for additional blog posts around some of the new capabilities.<\/p>\n<p>To use the new SDKs, simply update your package managers, or download the latest binaries from the Esri Developer site. Top tip, if you\u2019re updating from the 200.x SDKs: since we remove all deprecated APIs when there&#8217;s a major version bump, if you first update to 200.8 and resolve any deprecation warnings, you&#8217;ll then be able to update to 300.0 with no further code changes.<\/p>\n<p>300.0 is just the start for these new capabilities as we ready ourselves to deliver more analysis tools to support developers migrating from ArcGIS Engine and ArcGIS Local Server, as well as adding capabilities to the new local scene view (including feature layers and graphic overlays, and much more).<\/p>\n<p>For more information, check out the release notes for the <a href=\"https:\/\/developers.arcgis.com\/net\/release-notes\/release-notes-for-300-0\/\">.NET<\/a>, <a href=\"https:\/\/developers.arcgis.com\/flutter\/release-notes\/release-notes-for-300-0\/\">Flutter<\/a>, <a href=\"https:\/\/developers.arcgis.com\/kotlin\/release-notes\/release-notes-for-300-0\/\">Kotlin<\/a>, <a href=\"https:\/\/developers.arcgis.com\/qt\/release-notes\/release-notes-for-300-0\/\">Qt<\/a>, and <a href=\"https:\/\/developers.arcgis.com\/swift\/release-notes\/release-notes-for-300-0\/\">Swift<\/a> SDKs, and remember we\u2019re always ready to help out in the <a href=\"https:\/\/community.esri.com\/t5\/arcgis-maps-sdks-for-native-apps\/ct-p\/arcgis-runtime-sdks\">Esri Community forums<\/a>.<\/p>\n"}],"related_articles":"","show_article_image":false,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/04\/native-sdks-300-card.jpg","wide_image":false},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.9 (Yoast SEO v25.9) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>What\u2019s new in ArcGIS Maps SDKs for Native Apps 300.0<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What\u2019s new in ArcGIS Maps SDKs for Native Apps 300.0\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\" \/>\n<meta property=\"og:site_name\" content=\"ArcGIS Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/esrigis\/\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@ESRI\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"16 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\"},\"author\":{\"name\":\"Nick Furness\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/e07f43559a84520f015fcf55e8c58ab8\"},\"headline\":\"What\u2019s new in ArcGIS Maps SDKs for Native Apps 300.0\",\"datePublished\":\"2026-04-21T13:37:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\"},\"wordCount\":10,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"articleSection\":[\"Announcements\",\"Developers\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\",\"name\":\"What\u2019s new in ArcGIS Maps SDKs for Native Apps 300.0\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2026-04-21T13:37:47+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What\u2019s new in ArcGIS Maps SDKs for Native Apps 300.0\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"name\":\"ArcGIS Blog\",\"description\":\"Get insider info from Esri product teams\",\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\",\"name\":\"Esri\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"width\":400,\"height\":400,\"caption\":\"Esri\"},\"image\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/esrigis\/\",\"https:\/\/x.com\/ESRI\",\"https:\/\/www.linkedin.com\/company\/5311\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/e07f43559a84520f015fcf55e8c58ab8\",\"name\":\"Nick Furness\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2019\/01\/DevSummit-2013-Face-150x150.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2019\/01\/DevSummit-2013-Face-150x150.png\",\"caption\":\"Nick Furness\"},\"description\":\"Nick Furness is a Product Manager for the ArcGIS Maps SDKs for Native Apps, and ArcGIS Maps SDKs for Game Engines, specializing in Swift and iOS. He's spent over 25 years working in the GIS space building projects ranging from small mom-and-pop solutions all the way up to enterprise utility and national government deployments. Nick presents at various Esri Developer Summits, the User Conference, and many other events, almost always talking about something to do with the Native Maps SDKs (although you might find the odd bit of JavaScript thrown in there).\",\"sameAs\":[\"http:\/\/developers.arcgis.com\",\"https:\/\/www.linkedin.com\/in\/nixta\/\",\"https:\/\/x.com\/geeknixta\"],\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/author\/nfurness\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"What\u2019s new in ArcGIS Maps SDKs for Native Apps 300.0","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0","og_locale":"en_US","og_type":"article","og_title":"What\u2019s new in ArcGIS Maps SDKs for Native Apps 300.0","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","twitter_card":"summary_large_image","twitter_site":"@ESRI","twitter_misc":{"Est. reading time":"16 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0"},"author":{"name":"Nick Furness","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/e07f43559a84520f015fcf55e8c58ab8"},"headline":"What\u2019s new in ArcGIS Maps SDKs for Native Apps 300.0","datePublished":"2026-04-21T13:37:47+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0"},"wordCount":10,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"articleSection":["Announcements","Developers"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0","name":"What\u2019s new in ArcGIS Maps SDKs for Native Apps 300.0","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2026-04-21T13:37:47+00:00","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"What\u2019s new in ArcGIS Maps SDKs for Native Apps 300.0"}]},{"@type":"WebSite","@id":"https:\/\/www.esri.com\/arcgis-blog\/#website","url":"https:\/\/www.esri.com\/arcgis-blog\/","name":"ArcGIS Blog","description":"Get insider info from Esri product teams","publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization","name":"Esri","url":"https:\/\/www.esri.com\/arcgis-blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","width":400,"height":400,"caption":"Esri"},"image":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/esrigis\/","https:\/\/x.com\/ESRI","https:\/\/www.linkedin.com\/company\/5311\/"]},{"@type":"Person","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/e07f43559a84520f015fcf55e8c58ab8","name":"Nick Furness","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2019\/01\/DevSummit-2013-Face-150x150.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2019\/01\/DevSummit-2013-Face-150x150.png","caption":"Nick Furness"},"description":"Nick Furness is a Product Manager for the ArcGIS Maps SDKs for Native Apps, and ArcGIS Maps SDKs for Game Engines, specializing in Swift and iOS. He's spent over 25 years working in the GIS space building projects ranging from small mom-and-pop solutions all the way up to enterprise utility and national government deployments. Nick presents at various Esri Developer Summits, the User Conference, and many other events, almost always talking about something to do with the Native Maps SDKs (although you might find the odd bit of JavaScript thrown in there).","sameAs":["http:\/\/developers.arcgis.com","https:\/\/www.linkedin.com\/in\/nixta\/","https:\/\/x.com\/geeknixta"],"url":"https:\/\/www.esri.com\/arcgis-blog\/author\/nfurness"}]}},"text_date":"April 21, 2026","author_name":"Multiple Authors","author_page":"https:\/\/www.esri.com\/arcgis-blog\/products\/developers\/announcements\/whats-new-in-arcgis-maps-sdks-for-native-apps-300-0","custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/08\/Newsroom-Keyart-Wide-1920-x-1080.jpg","primary_product":"Developers","tag_data":[],"category_data":[{"term_id":37101,"name":"Announcements","slug":"announcements","term_group":0,"term_taxonomy_id":37101,"taxonomy":"category","description":"","parent":0,"count":1967,"filter":"raw"},{"term_id":738191,"name":"Developers","slug":"developers","term_group":0,"term_taxonomy_id":738191,"taxonomy":"category","description":"","parent":0,"count":426,"filter":"raw"}],"product_data":[{"term_id":761642,"name":"ArcGIS Location Platform","slug":"platform","term_group":0,"term_taxonomy_id":761642,"taxonomy":"product","description":"","parent":36601,"count":215,"filter":"raw"},{"term_id":769142,"name":"ArcGIS Maps SDK for .NET","slug":"sdk-net","term_group":0,"term_taxonomy_id":769142,"taxonomy":"product","description":"","parent":36601,"count":40,"filter":"raw"},{"term_id":776202,"name":"ArcGIS Maps SDK for Flutter","slug":"sdk-flutter","term_group":0,"term_taxonomy_id":776202,"taxonomy":"product","description":"","parent":36601,"count":19,"filter":"raw"},{"term_id":768902,"name":"ArcGIS Maps SDK for Kotlin","slug":"sdk-kotlin","term_group":0,"term_taxonomy_id":768902,"taxonomy":"product","description":"","parent":36601,"count":34,"filter":"raw"},{"term_id":769152,"name":"ArcGIS Maps SDK for Qt","slug":"sdk-qt","term_group":0,"term_taxonomy_id":769152,"taxonomy":"product","description":"","parent":36601,"count":37,"filter":"raw"},{"term_id":768912,"name":"ArcGIS Maps SDK for Swift","slug":"sdk-swift","term_group":0,"term_taxonomy_id":768912,"taxonomy":"product","description":"","parent":36601,"count":33,"filter":"raw"},{"term_id":36601,"name":"Developers","slug":"developers","term_group":0,"term_taxonomy_id":36601,"taxonomy":"product","description":"","parent":0,"count":764,"filter":"raw"}],"primary_product_link":"https:\/\/www.esri.com\/arcgis-blog\/?s=#&products=developers","_links":{"self":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/2963262","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/users\/3811"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=2963262"}],"version-history":[{"count":0,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/2963262\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=2963262"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=2963262"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=2963262"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=2963262"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=2963262"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}