C Specification

The XrGoogleCloudAuthInfoApiKeyANDROID structure is defined as:

// Provided by XR_ANDROID_google_cloud_auth
typedef struct XrGoogleCloudAuthInfoApiKeyANDROID {
    XrStructureType    type;
    const void*        next;
    const char*        apiKey;
} XrGoogleCloudAuthInfoApiKeyANDROID;

Members

Member Descriptions
  • type is the XrStructureType of this structure.

  • next is NULL or a pointer to the next structure in a structure chain.

  • apiKey is a pointer to a string representing the API key.

Description

When this structure is passed to xrSetGoogleCloudAuthAsyncANDROID, the apiKey member must be a nonempty ASCII string with no spaces or control characters, otherwise the runtime must return XR_ERROR_VALIDATION_FAILURE.

apiKey must further satisfy the following conditions:

  • It must be a valid API Key generated for your Google Cloud project.

  • Your Google Cloud project must enable the relevant Google Cloud APIs (specified by the depending extensions).

  • If the API Key has restrictions, the restrictions must allow the relevant Google Cloud APIs and your application.

Otherwise, the call to xrSetGoogleCloudAuthAsyncANDROID will succeed but all calls to functions that depend on cloud authorization will act as documented for cloud failures in the extension that defines those functions. If such a function reports a failure and the application chains XrGoogleCloudAuthErrorResultANDROID to the output parameter of that function, the runtime must set XrGoogleCloudAuthErrorResultANDROID::error to XR_GOOGLE_CLOUD_AUTH_ERROR_ANDROID to indicate this error.

The asynchronous operation will complete with XR_SUCCESS once the API key is validated for formatting and stored by the runtime.

The application does not need to keep apiKey alive after the function returns. The runtime must make a copy of the apiKey for its asynchronous processing.

Valid Usage (Implicit)

See Also

Document Notes

For more information, see the OpenXR Specification

This page is extracted from the OpenXR Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2026 The Khronos Group Inc.