Releases: optimove-tech/Optimove-SDK-Android
Releases · optimove-tech/Optimove-SDK-Android
7.9.0
v7.8.1
What's Changed
- AB#262140 updated sdk to avoid memory leak caused by InAppDeeplink handler by @dsellick-opti in #64
New Contributors
- @dsellick-opti made their first contribution in #64
Full Changelog: v7.8.0...v7.8.1
v7.8.0
What's Changed
- AB#261538 - In-app Intercept Logic Feature by @kris-opti in #62
Full Changelog: v7.7.0...v7.8.0
7.7.0
API to set push notification accent color
7.6.0 Merge pull request #59 from optimove-tech/254821-v2-embedded-messages…
Embedded messaging
v7.5.0 Merge pull request #59 from optimove-tech/254821-v2-embedded-messages…
7.4.1
Fix duplicated events sent when multiple immediate events reported
Add support for Preference Center
218544: Setup Preference Center for Android SDK (#48) * Set brand group id when enabling preference center through config builder * Revert base64creds * Add basic structure for get and set preferences * Add channel enum * Handle no customer ID and initial mapping when get preferences is called * Map region for url and initial setup for setting preferences * Add putSync * Use list of channels and topics and rename file * Refactor PreferenceCenter into separate feature * Check for brand group ID during initialization * Return if preference center hasn't been enabled * Get customer ID from user info when requests made * Rename Topic file * Small tweaks * Initialise execute * public accessor and arg is what cusomers actually see, not private field * Use optimove instace to get userInfo * Fix url * Only initalize pref center if optimove has been configured * tiny refactor to highlight that callbacks are always fired * Fix url encoding by only encoding customer ID * Use try with resources * handle all foreseeble channels * log PC endpoints failing as an error, handle real status codes that endpoints may return * freeze good customer id at the time when task was submitted to executor * Use preference center config string to set config * Update dummy string for pref center creds * Move preference center config to separate config class * Remove placeholder enablePreferenceCenter * Set PreferenceCenterConfig attributes via constructor * Only store pref center config * Move pref center config to appropriate namespace and rename. Also fix setting prefs * Map dev region * Remove region mapping * remove comments, package is default access modifier * dont require optimove credentials, it's all available in PC config string * Set tag to OptimovePreferenceCenter string * Add result type to callback for more info * optimove credentials still need to be set as UserInfo is only updated when core credentials present * Add result type for set handler * Set result type * Remove redundant setting of result type * fix nested for loop * Fix subscribedChannels array in set preferences call * Fix channelSubscription * add buttons to test PC * some auto-formatting * Bump sdk version in gradel.properties and CHANGELOG.md * increment version code as well * Update README.md with link to preference center wiki * Enable setting pref center creds for delayed initialization * Remove duplicate code and store optimove config in PC * Not store optimove config in preference center * Handle null config when set/get preferences * check PC configured before submitting runnable, log error if not, new ResultType 'not configured' * check PC credentials are not null when delayed-setting them + format * remove unused import * remove unused method * Move channel enum to separate file * Update channel import * return accidentally removed lines * always log error status code -- some errors may have empty body and status is all we have * ui to set PC credentials in test app * rename ResultType value to have consistent definition of 'configured' * more consistent tag * delayed init of PC without Optimove can result in unexpected behaviour. Prevent * all PC errors logged with 'OptimovePC' tag * hid PC cred input when irrelevant + log with consistent pc tag * log every error under OptimovePC tag * correctly log response body -- previously it would be always empty --------- Co-authored-by: Vladislav Voicehovich <vladislav_v@optimove.com>
Fix: unexpected sound playing if provided sound does not exist
v7.3.1 Merge pull request #46 from optimove-tech/prevent-bad-sound-path-play…
Partial initialisation
- For the cases when optimove and optimobile credentials are not available at startup, allow finishing the initialisation when credentials are finally obtained.