Skip to content

Releases: google-ar/arcore-android-sdk

ARCore SDK for Android v1.17.0

19 May 17:49
Compare
Choose a tag to compare

Upcoming breaking change affecting previously published 32-bit-only apps

In August 2020, Google Play Services for AR (ARCore) will remove support
for 32-bit-only ARCore-enabled apps running on 64-bit devices. Support for
32-bit apps running on 32-bit devices is unaffected.

If you have published a 32-bit-only (armeabi-v7a) version of your
ARCore-enabled app without publishing a corresponding 64-bit (arm64-v8a)
version, you must update your app to include 64-bit native libraries before
August 2020. 32-bit-only ARCore-enabled apps that are not updated by this time
may crash when attempting to start an augmented reality (AR) session.

To learn more about this breaking change, and for instructions on how to update
your app, see https://developers.google.com/ar/64bit.

Known issues

None.

Breaking & behavioral changes

None.

New APIs and capabilities

Deprecations

None.

Other changes

Bug fixes

  • Fixed a bug that caused a crash during the first installation of ARCore on certain devices.

ARCore SDK for Android v1.16.0

19 Mar 20:08
Compare
Choose a tag to compare

Upcoming breaking change affecting previously published 32-bit-only apps

In August 2020, Google Play Services for AR (ARCore) will remove support
for 32-bit-only ARCore-enabled apps running on 64-bit devices. Support for
32-bit apps running on 32-bit devices is unaffected.

If you have published a 32-bit-only (armeabi-v7a) version of your
ARCore-enabled app without publishing a corresponding 64-bit (arm64-v8a)
version, you must update your app to include 64-bit native libraries before
August 2020. 32-bit-only ARCore-enabled apps that are not updated by this time
may crash when attempting to start an augmented reality (AR) session.

To learn more about this breaking change, and for instructions on how to update
your app, see https://developers.google.com/ar/64bit.

Breaking & behavioral changes

  • Beginning with ARCore SDK 1.16.0, most devices will now return additional supported camera configs with lower GPU texture resolutions than the device's default GPU texture resolution. See the ARCore supported devices for details.

New APIs and capabilities

  • Expanded GPU resolutions are now available on more devices through the getSupportedCameraConfigs(CameraConfigFilter) API. See ARCore supported devices for details.

Deprecations

None.

Other changes

  • Cleaned up documentation for ArCameraConfigFilter type.

Bug fixes

  • Fixed the triangle winding direction in BackgroundRenderer in our samples, allowing it to work with GL_CULL_FACE.

ARCore SDK for Android v1.15.0

06 Feb 18:43
Compare
Choose a tag to compare

Breaking & behavioral changes

  • Update: A bug caused this feature to not work in 1.15.0, which is fixed in 1.16.0.
    Beginning with ARCore SDK 1.15.0, some devices will now return additional supported camera configs with lower GPU texture resolutions than the device's default GPU texture resolution. See the ARCore supported devices for details.

New APIs and capabilities

  • None

Deprecations

  • None

Other changes

  • Vertical plane detection works better on surfaces with low visual texture.

Bug fixes

  • None

ARCore SDK for Android v1.14.1

19 Dec 20:30
Compare
Choose a tag to compare

Note: This is a Google Play Services for AR (APK) only release.

Bug fixes

  • Fixes an issue that caused Google Play Services for AR to crash on some devices

ARCore SDK for Android v1.14.0

12 Dec 21:27
Compare
Choose a tag to compare

Breaking & behavioral changes

None.

New APIs and capabilities

  • Added CAMERA_UNAVAILABLE to the TrackingFailureReason enumeration to represent a temporary loss of the camera to another app on the device. After an app regains priority, tracking will resume.
  • Adds native error stack traces for some status failures.

Deprecations

None.

Other changes

None.

Bug fixes

  • Fixed the Shared Camera sample's black frame flicker when switching between AR and non-AR modes.

ARCore SDK for Android v1.13.0

29 Oct 19:30
Compare
Choose a tag to compare

Breaking & behavioral changes

None.

New APIs and capabilities

None.

Deprecations

None.

Other changes

  • Updated the samples gradle plugin to 3.5.0 (fixes "Gradle Sync error: No value has been specified for property manifestOutputDirectory").
  • Fixed a compiler warning in C apps ("warning: explicitly defaulted default constructor is implicitly deleted").

Bug fixes

  • Apps built with ARCore SDK 1.13 and later now correctly verify that the camera permission has been granted at ARCore session creation time. This check was missing in Google Play Services for AR (ARCore) 1.8 through 1.12, causing apps built with ARCore SDK 1.12 and earlier to fail to create an ARCore session on some devices, but succeed on others.

ARCore SDK for Android v1.12.1

12 Oct 01:31
Compare
Choose a tag to compare

Note: This is a Google Play Services for AR (APK) only release.

Bug fixes

  • Fixes issues affecting users of Google Maps AR Walking Directions.

ARCore SDK for Android v1.12.0

12 Sep 18:55
Compare
Choose a tag to compare

Breaking & behavioral changes

  • The data captured by hostCloudAnchor() (Java) and ArSession_hostAndAcquireNewCloudAnchor() (NDK), which is uploaded to the ARCore Cloud Anchor API service has changed. See https://developers.google.com/ar/develop/java/cloud-anchors/overview-android#how-hosted to learn more.

  • resolveCloudAnchor() (Java) and ArSession_resolveAndAcquireNewCloudAnchor() (NDK) will no longer timeout or fail when the ARCore Cloud Anchor API service is unreachable, or the anchor cannot be immediately resolved. Instead, the API will continue to attempt to resolve the provided anchors until they are detached.

    • Java: ERROR_RESOLVING_LOCALIZATION_NO_MATCH and ERROR_SERVICE_UNAVAILABLE enums in CloudAnchorState are now deprecated and will no longer be returned.
    • NDK: AR_CLOUD_ANCHOR_STATE_ERROR_RESOLVING_LOCALIZATION_NO_MATCH and AR_CLOUD_ANCHOR_STATE_ERROR_SERVICE_UNAVAILABLE enums in the ArCloudAnchorState are now deprecated and will no longer be returned.

    These changes only affect apps built with ARCore SDK 1.12 or later. Apps built with older SDKs will not be affected by this change, and will continue to observe old behavior.

New APIs and capabilities

  • There is a new enum value that can be set for a Cloud Anchor's state. The ERROR_HOSTING_SERVICE_UNAVAILABLE value will be set for a Cloud Anchor during the hosting process, if the ARCore Cloud Anchor service is unreachable.

Deprecations

  • The following enum values in the CloudAnchorState are being deprecated:
    • Java: ERROR_RESOLVING_LOCALIZATION_NO_MATCH and ERROR_SERVICE_UNAVAILABLE enums in CloudAnchorState are now deprecated and will no longer be returned.
    • NDK: AR_CLOUD_ANCHOR_STATE_ERROR_RESOLVING_LOCALIZATION_NO_MATCH and AR_CLOUD_ANCHOR_STATE_ERROR_SERVICE_UNAVAILABLE enums in the ArCloudAnchorState are now deprecated and will no longer be returned.

Other changes

None.

Bug fixes

None.

ARCore SDK for Android v1.11.0

05 Aug 20:22
Compare
Choose a tag to compare

Breaking & behavioral changes

  • ARCore now targets 60fps on supported devices. Use new camera config filters to target 30fps on all ARCore devices. See ARCore supported devices for a list of supported devices.
  • All sample apps will now allow the device to sleep when tracking is lost, such as when the device is placed on a table or in a pocket or bag.

New APIs and capabilities

  • Ability to filter camera configurations based on Target FPS and Depth Sensor Usage:
    • New CameraConfigFilter class (Java) and ArCameraConfigFilter_*() functions (NDK) let an app filter the CameraConfig list based on Target FPS and/or Depth Camera Usage.
    • New Session.getSupportedCameraConfigs(CameraConfigFilter) (Java) and ArSession_getSupportedCameraConfigsWithFilter(…) (NDK) returns a list of supported camera configs based on the provided filter settings.

Deprecations

  • Session.getSupportedCameraConfigs() (Java) and ArSession_getSupportedCameraConfigs(…) (NDK) are now deprecated. Use getSupportedCameraConfigs(CameraConfigFilter) (Java) and ArSession_getSupportedCameraConfigsWithFilter(…)(NDK) instead.

Other changes

  • The ARCore service has been renamed to Google Play Services for AR. On Google Play devices it is now distributed as part of Google Play Services.
  • The samples have been updated to Gradle 5.4.1 and Android Gradle Plugin 3.4.1.
  • Samples now uses white for all detected planes, to avoid confusion due to users inferring meaning from the different colors.
  • Fixed a memory leak that occurs when an Activity is passed in as the Application Context during Session creation.
  • Added a switch to Computer Vision sample for toggling RGB camera passthrough.

Bug fixes

None

ARCore SDK for Android v1.10.0

20 Jun 20:55
Compare
Choose a tag to compare

Breaking & behavioral changes

  • None

New APIs and capabilities

  • New Environmental HDR mode added to Light Estimation API.
    • Environmental HDR provides developers with three APIs to replicate real world lighting when using the back-facing camera:
      • Main Directional Light: helps with casting shadows in the right direction.
      • Ambient Spherical Harmonics: helps model ambient illumination from all directions.
      • HDR Cubemap: provides specular highlights and reflections.
  • Add ArImage_* methods to access CPU image data not through Android NDK.

Deprecations

  • ArImage_getNdkImage(const ArImage* image, const AImage** out_ndk_image) (NDK) is now deprecated. Use the other ArImage_* functions to obtain image data.

Other changes

  • Java Config setters now return this, which allows method call chaining: session.configure(new Config(session).setA(..).setB(..));.
  • Augmented Faces runs faster and consumes less power.

Bug fixes

  • Previously, enabling Cloud Anchor mode with the front-facing (selfie) camera did not return an unsupported configuration error. This is now fixed.