ArcGIS Runtime SDK for iOS
100.15
|
The application's license details.
Instances of this class represent the current state of the application's license as returned by AGSRuntimeEnvironment::license
.
Until an app is licensed, it runs at the Developer license level. All functionality is available, but the map display is watermarked and the API logs messages stating that the app is in developer mode.
A deployed app needs to be run at minimum with the Lite license level to disable the map watermark. The Lite, Basic, Standard, or Advanced license level is set by calling setLicenseKey:error: (AGSArcGISRuntimeEnvironment)
with a license string obtained from the ArcGIS for Developers website or Esri Customer Service. With the varying license levels, a subset of functionality is available. Any attempt to use licensed functionality that is not available at the current license level will log or emit error messages.
To get Lite, Basic, Standard, or Advanced license level functionality, a user app is licensed in one of two ways:
To license with a license string, call setLicenseKey:error: (AGSArcGISRuntimeEnvironment)
.
To validate with information from a portal, you need an AGSLicenseInfo
instance. You can get one by calling AGSPortalInfo::licenseInfo
. Pass the AGSLicenseInfo
to setLicenseInfo:error: (AGSArcGISRuntimeEnvironment)
.
Both of these methods return an AGSLicenseResult
that reports the status of the license. Note that there is a 30-day timeout when using AGSLicenseInfo
. If the app is licensed using this method, the user must log in to the portal again before licensing the app. When this period has expired, calling setLicenseInfo:error: (AGSArcGISRuntimeEnvironment)
returns an AGSLicenseResult
which contains license status of AGSLicenseStatusLoginRequired
, and the app continues to run at the current license level (default is AGSLicenseLevelDeveloper
).
Properties | |
NSDate * | expiry |
NSArray< AGSExtensionLicense * > * | extensions |
AGSLicenseLevel | licenseLevel |
AGSLicenseStatus | licenseStatus |
AGSLicenseType | licenseType |
BOOL | permanent |
|
readnonatomicstrong |
License expiry date.
This is either the expiry date of a license set with setLicenseKey:error: (AGSArcGISRuntimeEnvironment)
or the portal subscription expiry when using setLicenseInfo:error: (AGSArcGISRuntimeEnvironment)
.
|
readnonatomiccopy |
An array of the extension licenses for the app.
For valid extension license keys supplied when calling setLicenseKey:extensions:error: (AGSArcGISRuntimeEnvironment)
, this array is populated with information about the extension licenses. Use this function to iterate extension licenses available for the app.
Note that, although this array is empty when running an app in developer mode, all extension licensed functionality will be available.
|
readnonatomicassign |
The current license level set in the app. See AGSLicenseLevel
for available levels.
By default, unless a deployment license is provided, apps run with an AGSLicenseLevelDeveloper
license.
|
readnonatomicassign |
Current status of the application's license.
|
readnonatomicassign |
The license type of the current license.
In developer mode, this property is AGSLicenseTypeDeveloper
. Otherwise, it is AGSLicenseTypeNamedUser
if the app was licensed by logging in to a portal and acquiring an AGSLicenseInfo
, or AGSLicenseTypeLicenseKey
if the app was licensed from a license string. The license type can change while an app runs. For instance, the app may start running licensed with a Lite license key (AGSLicenseTypeLicenseKey
) and later become licensed from AGSLicenseInfo
(AGSLicenseTypeNamedUser
).
|
readnonatomicassign |
YES
if a license is perpetual, NO
otherwise.