SAS® SDK Release Notes
Version 30.22.0
Notes:
-
Miscellaneous bug fixes
Version 30.21.0
Notes:
-
Miscellaneous bug fixes
Version 30.20.0
Notes:
-
Miscellaneous bug fixes
Version 30.19.0
Notes:
-
Miscellaneous bug fixes
Version 30.18.0
Notes:
-
Miscellaneous bug fixes
Version 30.17.0
Notes:
-
Miscellaneous bug fixes
Version 30.16.0
Notes:
-
Miscellaneous bug fixes
Version 30.14.0
Notes:
-
Miscellaneous bug fixes
Version 30.13.0
Notes:
-
Miscellaneous bug fixes
Version 30.12.0
Notes:
-
Miscellaneous bug fixes
Version 30.11.0
Notes:
-
Miscellaneous bug fixes
Version 30.10.0
Notes:
-
Upgrade of various library dependencies
-
Miscellaneous bug fixes
Version 30.9.0
Notes:
-
Miscellaneous bug fixes
Version 30.8.0
Notes:
-
Miscellaneous bug fixes
Version 30.7.0
Notes:
-
Miscellaneous bug fixes
Version 30.5.0
Notes:
-
Miscellaneous bug fixes
Version 30.4.0
Notes:
-
Upgrade of various library dependencies
Version 30.3.0
Notes:
-
Upgrade of various library dependencies
Version 30.2.0
Version 30.1.0
Version 30.0.0
Notes:
- minSdkVersion has been reverted to 24
- targetSdkVersion has been updated to 31
-
Upgrade of various library dependencies
Version 29.0.0
Notes:
- minSdkVersion has been updated to 28
- targetSdkVersion has been updated to 31
-
Upgrade of various library dependencies
Version 28.15.0
Notes:
-
Addition of an SASManagerContext.authProvider property to provide pluggable support for single sign-on (SSO)
-
Upgrade of various library dependencies
Version 28.0.0
Version 27.0.0
Notes:
- New APIs added to access individual Report objects from a report.
- New Covid-19 Tracker sample app added to SAS SDK for Android Examples. The Covid-19 tracker app illustrates the use of the new report object APIs to build a completely custom presentation of the report content within a new app.
Version 26.0.1
Notes:
- compileSDKVersion and build tools versions have been updated to 29
- SDK now includes binaries for both arm64 and x86_64 architectures
Version 26.0.0
Version 8.34
Notes:
-
The name of a required shared provider key has changed
from:
sas_sdk_shared_provider_auth
to:
sas_sdk_shared_file_provider_auth
Please update the property key in
donottranslate.xml
. -
Update your app theme to inherit from
Theme.MaterialComponents
(or a descendant) -
The CustomApp example now connects to and downloads reports from the Try Before you Buy server.
Version 8.33
Notes:
- Kotlin version has been updated to 1.3.0
- Migrated to Android X:
-
For complete instructions on the migration visit: Official Migration Guide.
-
Example:
In the build.gradle file
Replace:
implementation com.android.support:appcompat-v7:28.0.0
With:
implementation androidx.appcompat:appcompat:1.0.2
-
Version 8.32
Notes:
- compileSDKVersion and build tools versions have been updated to 28
- ReportViewContoller:
- AddFullScreenListener/RemoveFullScreenListener has been removed in favor of ReportEvents and addReportEventListener
- ConnectionCreateDescriptor has been removed and its password property absorbed into ConnectionDescriptor. The reports property containing a list of ReportDescriptors has been removed. These ReportDescriptors are now passed in to SASManager.create().
- SASManager:
- create()
- Now takes ConnectionDescriptor instead of ConnectionCreateDescriptor
- Now takes a list of ReportDescriptors. These were previously contained in ConnectionCreateDescriptor.
- create()
Update Instructions:
- ConnectionCreateDescriptor:
- Replace any usage of ConnectionCreateDescriptor with a ConnectionDescriptor, including the same password property that was previously used in ConnectionCreateDescriptor.
- Pass the list of reports that used to be contained by ConnectionCreateDescriptor to the method SASManager.create() when establishing a connection.
- ReportViewController:
- If you are using the addFullScreenListener/removeFullScreenListener, you’ll need to
replace that implementation with a ReportEventListener and check for the
FullScreenRequest ReportEvent type.
-
Example:
it.addReportEventListener { reportEvent -> when (reportEvent) { is FullScreenRequest -> supportActionBar?.run { if (reportEvent.fullScreen) { hide() } else { show() } } } }
-
- If you are using the addFullScreenListener/removeFullScreenListener, you’ll need to
replace that implementation with a ReportEventListener and check for the
FullScreenRequest ReportEvent type.