Beta API features

An Azure Sphere SDK release may contain both production APIs and Beta APIs. Beta APIs are still in development and may change in or be removed from a later release. Applications that use Beta APIs will generally require modifications after future Azure OS and SDK releases to continue to work correctly. In most cases, new APIs are marked Beta in their first release and moved to production in a subsequent release. Beta APIs provide early access to new APIs, enabling prototyping and feedback before they are finalized.

Beta features are labeled BETA feature in the documentation. Every Azure Sphere application specifies whether it targets only production APIs or both production and Beta APIs.

Target API sets and sysroots

The target API set indicates which APIs the application uses: either production APIs only or production and Beta APIs. You set and edit this value with the Project Properties in Visual Studio. The Target API Set value is either an integer that represents the application runtime version or an integer plus a string that identifies the Beta API release. For example, the value "1" specifies only the production APIs in the current release, whereas "1+beta1811" specifies the production and Beta APIs at the 18.11 release.

The Azure Sphere SDK implements multiple API sets by using sysroots. A sysroot specifies the libraries and header files that are used to compile and link an application. The sysroots

Develop applications with Beta APIs

If you start with an Azure Sphere sample that uses a Beta API, the Project Properties set the Target API Set to specify the production and Beta APIs for the current release.

If you do not base your application on one of the samples, or if you base it on a sample that uses only production APIs, follow these steps to set the project properties to use production and Beta APIs:

  1. Open the Azure Sphere project in Visual Studio.
  2. On the Project menu, select Project Properties...
  3. Ensure that the Configuration is set to either All Configurations or Active (Debug).
  4. In the list of General properties, select Target API Set.
  5. In the drop-down menu, select 1+Beta1811 and then click OK. Project Property Page

Beta APIs in the 18.11 release

The 18.11 release of the Azure Sphere SDK includes the following Beta APIs:

API Description
applibs/networking.h/* Supports networking capabilities.
applibs/rtc.h/clock_systohtc Supports the real-time clock (RTC).
applibs/storage.h/* Supports the use of on-device storage.
stdlib.h/getenv, setenv, unsetenv Supports environment variables.