This topic provides a list of new capabilities and known issues at 10.2.6.
Support for OAuth2
ArcGIS Runtime SDK for Qt 10.2.6 adds support for OAuth 2.0 authentication. For general information about OAuth 2.0 in ArcGIS and how to use it in different scenarios, see ArcGIS Online Authentication.
Using Qt WebEngine in your Windows app
If you use Qt WebEngine in your Windows app, your deployed app may encounter a crash due to the Qt bug 42083 titled WebEngine deployment issue on Windows. Please see the bug report for a discussion and possible work-around for this issue.
Migrating existing apps
To use projects built with version 10.2.5, some minor changes are required to source and project files.
ANGLE and DirectX on Windows
Windows only: Starting with 10.2.6, ArcGIS Runtime SDK for Qt for Windows builds use ANGLE instead of OpenGL to enable DirectX on Windows. Because the 10.2.6 SDK libraries for Windows don't include OpenGL libraries, your 10.2.5 app will crash when Qt attempts to access OpenGL libraries by default rather than ANGLE libraries. To tell Qt to use ANGLE by default, add this code at the beginning of your app. To see exactly where to place this code, see the main.cpp source file in the Runtime SDK C++ and QML template applications.
// Force usage of OpenGL ES through ANGLE on Windows
You need a Qt Prebuilt Component (a kit) that includes ANGLE support to develop 10.2.6 apps on Windows. Please refer to the System requirements topic for details.
Changes to prf file names in project files
The post installer copies Qt project feature (*.prf) files into the Qt kits on your development machine. Prior to ArcGIS Runtime 10.2.6 for Qt, these files had the same name from release to release. To support side-by-side installations in the future, the file names now include version numbers.
In existing C++ Qt project files, you will see a line that looks like this.
CONFIG += c++11 esri_runtime_qt
CONFIG += c++11 esri_runtime_qt10_2_6
Side-by-side installation with 10.2.5 is not supported
Version 10.2.5 and any related Beta release of the ArcGIS Runtime SDK for Qt may not be installed with any later release on the same machine. This means that you may not install version 10.2.6 if 10.2.5 is on the same machine. We plan to support side-by-side installations in upcoming releases.
Important issues addressed in this release
- Fixed an issue preventing connections to ArcGIS 10.3 servers.
- Improved connection speed to some secure services.
- Fixed a crash that occurred when a secure token expired.
- Fixed issues relating to setting credentials on various layers and tasks.
- Fixed an issue setting of a definition expression on a feature layer.
- Fixed an issue with getting distinct values from a feature layer.
- Fixed an issue honoring default values of a layer in a local sync geodatabase.
- Enabled editing of standalone tables in a feature service.
The C++ API is not supported on OS X, iOS, or Android. This is as designed.
If you are using Red Hat Enterprise Linux 6.x and the Esri-provided build of the Qt SDK, you must copy two folders from the Qt SDK installation folder to the folder containing the executable before running your app for the first time from Qt Creator. The folders are the plugins/platform folder and the qml folder. This is covered in the Guide topic Install and set up on Linux.
Due to a missing attribute in Qt Creator 2.7.2 (which is required for Red Hat Enterprise Linux 6.x) an edit must be made to the wizard template XML. Browse to the templates location in two folders, ~/.config/QtProject/qtcreator/templates/wizards/ArcGISRuntimeQmlTemplate and ~/.config/QtProject/qtcreator/templates/wizards/ArcGISRuntimeQtTemplate. In both folders, modify the file wizard.xml to delete the class="qmakeproject" attribute from the wizard tag in the XML. This attribute is supported in Qt Creator 3 but not present in Qt Creator 2.7.2. This is covered in the Guide topic Add a map to your app.
Positioning support via geoclue is unavailable in the Esri-provided Qt SDK RHEL 6. If you need this functionality you can build the Qt SDK yourself from source with this option enabled.
Interoperability between identical object instances from both the C++ and QML APIs is not supported. For example, passing a Point geometry object from QML to C++ and performing geometry operations on that Point in C++ is not supported.
The Qt QNetworkConfigurationManager property isOnline does not work on Linux platforms.
When using Route class, always create new Point objects for stops and barriers to avoid an issue with caching values of reused Point objects.
DynamicLayerInfo::resetToDefault is not working correctly, due to the DynamicLayerInfo not being correctly populated from services that support it.
10.2.6 will be the last version of this SDK to support geocoding using locator packages (*.gcpk files) with local server. If you are using locator packages you should consider instead using the local locator task available with the class LocalLocator.
Setting credentials in identity manager on iOS fails silently unless ignoreSslErrors is true.