Skip to content

Releases: statsig-io/android-sdk

4.45.3 - a few new functions

05 Feb 21:44
a518b32

Choose a tag to compare

New Features

  • StatsigOptions.setTier() now also accepts String
  • ParameterStore now includes a getKeys() function, in line with the Statsig iOS SDK.
  • Added interceptors to StatsigOptions, for injecting okHttp Interceptor instances to capture Statsig network calls

Improvements

  • Code cleanups and improved unit test reliability
  • Refactored storage layer. A DataStore-backed replacement is available (behind a test hook) but disabled by default

Included In This Release

  • b164420 kevin-statsig
    • add getkeys to parameterstore (#455)
  • 3369f35 kevin-statsig
    • storage flagging update (#454)
  • a3c35d6 kevin-statsig
    • clear more stuff in tests (#453)
  • cdec5fe kevin-statsig
    • fix lint errors (#451)
  • 2572d73 kevin-statsig
    • allow external okhttp interceptors (#450)
  • e6124c8 kevin-statsig
    • add setCustomTier to StatsigOptions (#449)
  • 903d503 kevin-statsig
    • remove http cache from tests (#445)
  • 71f36ad kevin-statsig
    • optimize android-sdk imports (#444)
  • 879cfdc kevin-statsig
    • actually fix timeout test (#448)

Full Changelog: 4.45.2...4.45.3

4.45.2 - Reworked networking

31 Jan 01:58
7f5dae2

Choose a tag to compare

Improvements

  • Leverage OkHttp for network calls with DoH DNS resolution
  • Added manufacturer to diagnostic metadata
  • Added abstraction layer for local storage handling. Will allow for storage migrations in future releases

Fixes

  • DoH makes android-sdk less likely to fail network initialization in several scenarios we've seen in the wild.

Additional Notes:

  • There was a merge order mixup that made it into the public repo. The released binary on Maven includes only the changes here in the release notes.

Included In This Release

  • 195f119 kevin-statsig
    • update test delay to run better on github (#437)
  • 98d6eef kevin-statsig
    • delete urlconnectionprovider (#435)
  • fff2ccc kevin-statsig
    • KeyValueStorage interface integration (#434)
  • 5103f20 kevin-statsig
    • ErrorBoundary update and test fixes (#433)
  • b9fa701 kevin-statsig
    • keyvalue storage interface and legacy impl (#432)
  • 5c496d2 kevin-statsig
    • expose httpclient init (#430)
  • 476c1f3 kevin-statsig
    • use okhttp for network (#429)
  • 50393a4 kevin-statsig
    • sanity check unit test for evaluatorutils (#425)
  • 3c448a2 kevin-statsig
    • add manufacturer to statsig metadata (#424)

Full Changelog: 4.45.1...4.45.2

4.45.1 - improved Gson performance

13 Nov 23:55
c911d42

Choose a tag to compare

Improvements

  • Updated Gson calls to use a single instance - should improve overall sdk memory usage and reduce latency
  • Additional data included in network calls for better diagnosing a specific endpoint problem

Fixes

  • Updated visibility of some members that were intended to be private
  • Adjusted property name to not apply @VisibleForTesting to a getter intended for public use.

Included In This Release

  • d084793 kevin-statsig
    • onDeviceEvalAdapter is public and should not need external gson (#422)
  • 4e6d4c6 kevin-statsig
    • Ensure only single Gson instance is used throughout the SDK (#420)
  • ab3f2d6 kevin-statsig
    • keep a reference to sharedPrefs (#419)
  • 6ac7d95 kevin-statsig
    • include stableID in init headers (#418)
  • 9e0b102 kevin-statsig
    • suppress deprecation warning (#417)
  • 81c406d kevin-statsig
    • privatize companion objects/tags (#416)
  • b6e92c6 kevin-statsig
    • hide statsigclient companion object/tag
  • e878b46 kevin-statsig
    • rename backing property

Full Changelog: 4.45.0...4.45.1

4.45.0 - getStatsigMetadata() and IStatsigLifetimeCallback

05 Nov 21:22
54cb5e2

Choose a tag to compare

New Features

  • Added getStatsigMetadata() to provide external visibility of metadata used by the SDK
  • Added IStatsigLifetimeCallback to StatsigOptions - it holds callback functions that may occur over the lifetime of the SDK.
  • IStatsigLifetimeCallback offers onValuesUpdated() which fires in situations where gate, experiment, or config values have changed for the current user.

Improvements

  • Code cleanups

Included In This Release

  • 074806a kevin-statsig
    • remove redundant lollipop check (#413)
  • 0139ccb kevin-statsig
    • expose statsigmetadata (#412)
  • 1efcf7c kevin-statsig
    • compiler warnings cleanup (#411)
  • 44ba146 kevin-statsig
    • callback for autoupdate (#398)
  • 3a9f8c3 kevin-statsig
    • skip config cache for publishing releases (#409)

Full Changelog: 4.44.4...4.45.0

4.44.4 - lower kotlin requirements

29 Oct 18:51
6f3b535

Choose a tag to compare

Fixes

  • kotlin version set back to 1.9.x (increased kotlin version requirements will come in a later, breaking change)

Included In This Release

  • fbe1286 kevin-statsig
    • lower kotlin versioning (#407)
  • 45bb8b4 kevin-statsig
    • update tests.yml (#406)
  • ba666c2 kevin-statsig
    • build optimizations (#401)
  • 1282150 kevin-statsig
    • leak less test state (#405)

Full Changelog: 4.44.3...4.44.4

4.44.3 - lower compileSDK requirements

27 Oct 18:51
b992807

Choose a tag to compare

Fixes

  • v4.44.2 included a dependency that required a higher compileSDK target (36) than intended (34).

Included In This Release

  • 87d9855 kevin-statsig
    • lower sdk requirements (#403)
  • b3c4b3c kevin-statsig
    • update gradle validation in maven workflow (#402)
  • e1e8fa5 kevin-statsig
    • update gradle validation in maven workflow

Full Changelog: 4.44.2...4.44.3

4.44.2 - fix: handling empty Dynamic Configs

22 Oct 20:50
6d53ace

Choose a tag to compare

Improvements

  • Additional debugging info in logcat (particularly for initialization paths)
  • Reworked gradle configuration (now in Kotlin)
  • Updated Android SDK minimums to current Play Store recommendations (min sdk 21)
  • Linted and reformatted Kotlin code

Fixes

  • Mitigations to decrease potential for ANR's
  • Corrected handling of empty dictionaries when getting Dynamic Configs

Included In This Release

  • 08e6d73 kevin-statsig
    • coroutine cleanup (#399)
  • 9a8999b Kevin Maurin
    • coroutine cleanup
  • fb3cf9e kevin-statsig
    • include loggingEnabled in diagnostic logs (#397)
  • adb9cc3 Kevin Maurin
    • include loggingEnabled in diagnostic logs
  • 93ca6e4 kevin-statsig
    • fix no-such-element exception (#396)
  • 05a7d7a Kevin Maurin
    • fix android kong performance test
  • 5123b04 kevin-statsig
    • more informative init logging (#395)
  • e72dbfa Kevin Maurin
    • more informative init logging
  • 58ff21a kevin-statsig
    • apply ktLint formatter (#394)
  • 0fb5b56 Kevin Maurin
    • apply ktLint formatter
  • c162087 kevin-statsig
    • API and test cleanup (#393)
  • 45c719e Kevin Maurin
    • API and test cleanup
  • 5bbe42f kevin-statsig
    • finishing touches for android build migration (#392)
  • a32ac4f Kevin Maurin
    • finishing touch for kong
  • 556c61a kevin-statsig
    • Merge pull request #389 from statsig-io/10-10-sanitize_autovalueupdateinterval_on_entry
  • 93e6c9d kevin-statsig
    • re-sync lint baseline (#391)
  • 19edc52 Kevin Maurin
    • re-sync lint baseline
  • 22f4a69 kevin-statsig
    • update gradle and dependencies (#387)
  • 7854475 Kevin Maurin
    • update gradle and dependencies
  • 4a1fadf kevin-statsig
    • dependency inject url connection creation (#390)
  • a644138 Kevin Maurin
    • sanitize autoValueUpdateInterval on entry
  • 243698e Kevin Maurin
    • dependency inject url connection creation
  • cf2bbd8 kevin-statsig
    • warning logs for re-initializing StatsigClient (#388)
  • 7403855 Kevin Maurin
    • warning logs for re-initializing StatsigClient
  • 333240f kevin-statsig
    • add a test manifest and update targetSdk (#386)
  • 73c1114 Kevin Maurin
    • add a test manifest and update targetSdk
  • 8a5cf05 kevin-statsig
    • misc cleanup (#385)
  • cd23cbb Kevin Maurin
    • misc cleanup
  • 276d876 kevin-statsig
    • broader logs for android-sdk (#384)
  • 466f808 kevin-statsig
    • update debug logging (#383)

Full Changelog: 4.44.1...4.44.2

4.44.1 - tighter consumer ProGuard rules

27 Sep 00:06
958485a

Choose a tag to compare

Improvements

  • Stopped com.statsig.android-sdk consumer ProGuard rules from applying outside of Statsig libraries

Fixes

  • Prevented unwarranted consumer binary size increases

Included In This Release

  • 1fbb199 kevin-statsig
    • adjust proguard consumer config (#381)
  • 4a18ac3 Kevin Maurin
    • adjust proguard config
  • 85bd82c kevin-statsig
    • even more test instrumentation (#379)
  • 323eb34 Kevin Maurin
    • even more test instrumentation
  • 28c63b0 kevin-statsig
    • more tests using Robolectric (#376)
  • 82fe5a4 Kevin Maurin
    • more tests using Robolectric

Full Changelog: 4.44.0...4.44.1

4.44.0 - expose sessionID

24 Sep 23:45
d3028ee

Choose a tag to compare

New Features

  • getSessionID() is available in Statsig and StatsigClient

Included In This Release

  • 6b95f57 kevin-statsig
    • make sessionId readable (#377)
  • e142617 kevin-statsig
    • unit testing with Robolectric (#374)

Full Changelog: 4.43.0...4.44.0

4.43.0 - Update StatsigOptions at runtime: enable or disable logging

23 Sep 18:43
bf5fbb9

Choose a tag to compare

New Features

  • Add new option to enable/disable logging during runtime.

Improvements

  • Deprecation warning for StatsigOptions.disableDiagnosticsLogging (reflecting that it is no longer used)

Included In This Release

  • dc17890 kevin-statsig
    • mark disableDiagnosticsLogging as deprecated (#372)
  • ba502df kevin-statsig
    • tweak StatsigRuntimeMutableOptions property inheritance (#371)
  • 7889f60 kevin-statsig
    • Add runtime mutable option to enable/disable logging (#370)
  • 304b9be kevin-statsig
    • Merge pull request #369 from statsig-io/09-17-fixing_a_comment_typo
  • a90bc6f Kevin Maurin
    • Fixing a comment typo.

Full Changelog: 4.42.2...4.43.0