v4.26.5 – September 14, 2023

– Feature – `mSFSmartfeedWidget.toggleDarkMode(darkMode);` instead of re-creating SFWebViewWidget on darkMode change.

v4.26.2 – August 20, 2023

– Improvement – Allow publishers to override the default bottom padding with `SFWebViewHeightDelegate`

v4.25.0 – July 16, 2023

– Improvement – improve the implementation for fetching Android Advertiser ID. No need to use AdMob APP_ID anymore.

v4.24.0 – June 28, 2023

– Feature – OBCompose – modernize all the dependencies and release flow. Integrate with the latest SDK version.
– Feature – add 2 new events of Otto bus for optional use by publishers when using the Bridge: `HeightChangeEvent` and `BridgeRecsReceivedEvent`.
– Internal – passing of T-param is now done via Otto bus
– Internal – disable scroll bar from SFWebViewWidget.

v4.23.0 – June 11, 2023

– Internal – targetSDK set to 32 following feedback from a main publisher saying 33 is too advanced and cause problems.
– Important – finally update our SDK to use `’com.google.android.gms:play-services-ads:22.1.0’` (was 15.0.1). Breaking changes for publishers – all apps should make sure to include AdMob APPLICATION_ID in their app `AndroidManifest.xml` file.

v4.22.0 – May 11, 2023

– Internal – dependencies library + upgrade compileSDK to 33 + update build tools and gradle wrapper
– Internal – Update to the new way of publishing library via maven-publish plugin and fix errors when uploading AAR to cherry-repo.com
– Internal – update CircleCI build accordingly
– Internal – compileSdkVersion and targetSdkVersion upgrade to 33 (was 31)
– Internal – tools.build.gradle upgrade to 7.3.1 (was 4.2.2)

v4.21.0 – March 2, 2023

– Hotfix – SDK should call `SFWebViewWidget.this.requestLayout();` on Main thread

v4.21.0 – February 28, 2023

– Fix – Bridge No connectivity – change SFWebViewNetworkDelegate to be a static WeakReference.

v4.20.0 – February 15, 2023

  • Fix – Video widget sometimes crashed due to chromium known issue with post image, see reference
  • Feature – add a new flag `shouldCollapseOnError`, i.e. height of WebView will collapse to 0 on network error.
  • Feature – support for OBNews in “regular” and “Bridge” widgets.

v4.19.0 – January 19, 2023

  • Internal – add query param to all ODB and MV requests `ref=https://app-sdk.outbrain.com/`

v4.18.0 – January 11, 2023

  • Internal – add query param to all ODB and MV requests `ref=app.sdk`

v4.17.0 – December 20, 2022

  • Internal – use `bridgeParams` to pass values between 2 Bridge widget on the same page (instead of `t` param)

v4.16.0 – December 7, 2022

  • Feature – add support for platforms API for the Bridge (SFWebViewWidget).

v4.15.0 – October 31, 2022

  • Internal – add `deviceType` and `dosv` params to Bridge and ODB requests to improve user-agent detection.

v4.14.0 – September 14, 2022

  • Feature – Bridge support for “widget external events”, passed via SFWebViewEventsListener.

v4.12.0 – August 24, 2022

  • Minor – add a new SFWebViewEventsListener to receive the onWidgetRendered event (external events)

v4.11.1 – August 11, 2022

  • Infra – Take the 2 dependecies from jcenter() (service not available anymore) and upload them both to cherry-repo.com instead.

v4.10.0 – July 19, 2022

  • Infra: Compile with Min SDK: 16 –> 21
  • Infra: Compile with TargetSDK: 30 –> 31
  • Infra: OKHttp library update from 3.12.x to 4.9.3
  • Infra: Picasso 2.71828 –> 2.8
  • Error Fix – OKHttp mismatch version error.
  • Internal – many Lint fixes
  • Internal – add oo (opted out) param to viewability report
  • Internal – add new Bridge method for error reporting coming from the HTML

v4.9.0 – May 31, 2022

  • Bug fix – memory leak report by a publisher PR
  • Improvement – add protection in code in case a mandatory field from ODB response is missing.
  • Internal – add “error report” to Outbrain backend in case of major error in SDK.
  • Improvement – refactor code around Otto Bus library
  • Internal – change the logic of isPaid() to be similar to JS widget
  • Internal – create SFWebViewWidgetVisibility for “compose solution”

v4.8.7 – May 18, 2022

  • Bug fix – Fix Crash on OKHTTP interceptor on bad URL
  • Bug fix – Fix for the bridge problem – WebView scrolls to top on click

v4.8.6 – April 07, 2022

  • Feature – Bridge viewability

v4.8.5 – March 30, 2022

  • Feature – support regular widget with bridge widget (idx=1) in one page

v4.8.4 – March 27, 2022

  • Feature – support configure viewability per listing for ViewGroup
  • Improvement – Bridge initialization with ViewGroup. No need to pass RecyclerView or ScrollView
  • Improvement – loading more items calculations in Bridge are more accurate

v4.8.3 – January 19, 2022

  • Fix – Remove JCenter dependencies

v4.8.0 – December 14, 2021

  • Feature – SFWebViewWidget (SDK bridge) support for 2 widgets on the same page (widgetIndex param).
  • Feature – Support for darkMode in SFWebViewWidget (SDK-bridge).
  • Infra – build with with compileSDK=30 minSDK=16

v4.4.1 – October 26, 2021

  • Fix – memory leaks reported by Leak Canary (related to OBCardView and ViewablityTimerTask) – now fixed.
  • Update – remove all instances of OBTextView from SDK code and examples (it was deprecated before, now completly removed).

v4.4.0 – October 24, 2021

  • Improvement – UI fixes for the Smartfeed according to new design guidelines.
  • Feature – Viewability per listing for regular widget
  • Feature – support video on SDK Bridge
  • Improvement – add darkMode flag to ODB requests.
  • Update – fix Journal sample app with the new implementation for Viewability per listing

v4.3.0 – March 21, 2021

  • Minor – fix title color for organic recs (should be the same as paid)
  • Bug fix – widget title color should be according to dark\light theme
  • Improvement – add defaultMarginInGrid as a new property in OBSmartFeed
  • Feature – support new ODB setting dynamic:HeaderFontSize

v4.2.0 – February 28, 2021

  • Feature – SFWebView solution (Smartfeed on WebView)
  • Internal – Parse and use ODB settings dynamic:IsShowButton from odb response
  • Internal – Implement support for new ODB settings dynamic:OrganicSourceFormat and dynamic:PaidSourceFormat
  • Bug fix – Widget header should appear only once per widget
  • Bug fix – Fix for displaySourceOnOrganicRec – it didnt work for single col rec

v4.1.0 – February 14, 2021

  • Feature: CTA button on single rec
  • Feature: Smartfeed theme color can be customized by the publisher
  • Bug fix – OKHttp close respones body leaks
  • Bug fix – Viewablity weak listener in ViewTimerTask.java was gone before event was dispatched.

v4.0.2 – November 25, 2020

  • Feature: “dark mode” support (configure with this.obSmartFeed.setDarkMode(true))
  • Feature: “Read More”
  • Bug fix – Fixed memory leaks detected by Leak Canary in Viewability flow and in VideoUtils.

v4.0.1 – October 13, 2020

  • Critical Change: Support for AndroidX – compile with API 29, min SDK is 16
  • Feature: GIF image format support.
  • Feature: Weekly Highlights card
  • Feature: Support for platforms odb endpoint
  • Feature: Aura platform support (via contextKV)
  • Internal: Update OKHttp3 version from 3.10.0 (2018-02-24) to 3.12.12 (2020-05-17)
  • Bug fix – SFViewability per listing – there were several ViewTimerTasks that run on the same rec
  • Bug fix – SFViewability per listing – when app switched to background – the viewability timer tasks kept on running, resulting in a burden on the system.

v3.9.2 – June 22, 2020

  • Feature: Branded Carousel card
  • Feature: App install card
  • Bug fix: if “custom ui” is configured – font should stay “as is” (bypass optimizations)
  • Internal: add sdkVersion param to video url

v3.9.1 – April 27, 2020

  • Internal – fix for AB tests didn’t pass values to child widgets in the Smartfeed.
  • Feature – GDPR v2 support according to this spec

v3.9.0 – April 14, 2020

  • Feature: support for optimizations (A\B tests) in Smartfeed
  • Internal: add default vidget url
  • Internal: change isVideoItem logic (only vid=1)
  • Bug fix: if “source format” was active and “source name” was null – the sdk would crash

v3.8.5 – January 22, 2020

  • Feature: support CCPA according to the official iAB guidelines (last page)
  • Feature: new Smartfeed card – trending in category
  • Internal – add article url to video url params
  • Bug fix – bad values for dynamic:PaidLabelTextColor or dynamic:PaidLabelBackgroundColor could crash the SDK

v3.7.10 – October 28, 2019

  • Improvement – add displaySourceOnOrganicRec flag in OBSmartFeed
  • Feature – support Video in “2 items in line” (outside of grid)

v3.7.9 – September 12, 2019

  • Bug fix – SFItemData for horizontal type view was missing the OBResponseRequest – might affect Viewability per listing.
  • Improvement: add getter for hasMore() in OBSmartFeed.
  • Internal – in case of multivac success with 0 cards in response – we need to log error and set the isLoading.
  • Internal – add protection for checking hasMore before fetchMoreRecommendations is called.

v3.7.8 – August 26, 2019

  • Bug fix – SDK crashed if rec image url was an empty string.
  • Bug fix – Viewability data null, add some protection in code to try to avoid “null pointer exception” crash.
  • Bug fix – Update UI in parent response for smartfeed with no children.
  • Bug fix – OBSmartFeedDefaultListener exception for startActivity with appContext.

v3.7.7 – July 15, 2019

  • Bug fix – Add protection in code to fix a crash happening on Activity restoration (Adapter.notifyItemRangeInserted null object reference) – part 2

v3.7.6 – July 11, 2019

  • Bug fix – Add protection in code to fix a crash happening on Activity restoration (Adapter.notifyItemRangeInserted null object reference)

v3.7.5 – July 8, 2019

  • Improvement: Add Outbrain.testLocation("us") for example, to simulate Geo in ODB requests.
  • Improvement: Add protection for non-valid url strings in pixels array. (folllowing a crash in production)
  • Improvement: Smartfeed in the middle (improved implementation)
  • Improvement: set recycleView is now a public method in OBSmartFeed

v3.7.0 – June 6, 2019

  • Feature: Support for Smartfeed in the middle of the RecycleView.
  • Feature: App developer can now use OBSmartFeedDefaultListener as a default listener instead of implementing one.
  • Improvement: getOutbrainAboutURL(Context ctx) is now deprecated. Use getOutbrainAboutURL() instead.
  • Improvement: OBSmartFeed method fetchMoreRecommendations() is now public.
  • Improvement: proguard will now allow the project to build in release mode
  • Improvement: update project to use the new Picasso lib version 2.7
  • Bug fix: new implementation for ViewabilityService editTmParameterInUrl() method (served reporting error).

v3.6.0 – April 4, 2019

  • Feature: new Smartfeed API (Multivac)
  • Feature: Viewability per listing
  • Feature: Served vs. Requested
  • Feature: Smartfeed pauseVideo method
  • Improvement: Update UI before fetchMoreRecommendations for parent widget
  • Improvement: Video – support reload of additional videos in the same WebView

v3.5.1 – February 5, 2019

  • SmartFeed – Sponsored label text color and background color shouldn’t changed for Custom UI

v3.5.0 – January 24, 2019

  • SmartFeed – Remove “Recommended by” from items header
  • SmartFeed – “chunk size” settings support
  • SmartFeed – BugFix: Publisher logo size

v3.4.7 – January 17, 2019

  • VideoWidget – Improvements: fetch recommendation only once per article and support recycle view
  • VideoWidget – update sample app (recycle view)
  • SmartFeed – Supports additional listener: OBSmartFeedAdvancedListener
  • SmartFeed – isVideoEligible field in OBSmartFeed
  • Smartfeed – Bug fix: Bad HTML encoded characters in recommendation title
  • Smartfeed – Bug fix: Visibility of recommendation source shouldn’t change for custom UI
  • Smartfeed – Bug fix: Shadow color should be transparent for non-paid recommendations

v3.4.4 – January 3, 2019

  • Support VideoWidget
  • Add Audience Campaigns Label field in OBRecommendation
  • Smartfeed onOutbrainRecsReceived listener to OBSmartFeedListener interface
  • Smartfeed – Improve the performance of the recycleview UI updates
  • Smartfeed – Add getSfItemType method – get the item type of an item in the recycleview
  • Smartfeed – Support set custom UI for SFItemType
  • Smartfeed – Support source format
  • Smartfeed – Add a new flag to test (simulate) RTB recs
  • Smartfeed – Bug fix: Header images background color should be transparent
  • Smartfeed – Bug fix: Recommendation title text color won’t change for custom UI

v3.4.3 – December 5, 2018

  • Smartfeed Paid Label support
  • RTL support
  • Viewability support for Smartfeed sub-widgets (children)

v3.4.1 – Novemeber 22, 2018

  • Bug fix: replace all clearOnScrollListeners with removeOnScrollListener

v3.4.0.beta1 – Novemeber 21, 2018

  • External ID
  • Update Google Play Services library to 15.0.1 (was 11.8.0)
  • Support RTL in Smartfeed, phase 1
  • Update SDK version logic, cleaner code

v3.3.0.beta1 – Novemeber 1, 2018

  • GDPR

v3.2.0.beta2 – October 22, 2018

  • bug fix: infinite smartfeed didnt work

v3.2.0.beta1 – October 21, 2018

  • Video player in Smartfeed
  • Improvement: add items to smart feed array on background thread
  • Support for Smartfeed with only a parent with single recommendation (no children)