Skip to main content

Listeners in mobile apps (iOS / Android SDK)

Which listeners run in the iOS and Android SDK, why a fix needs an app release, how offline data arrives on a later open, and which listeners do not run in the app.

Listeners on a website run in the browser from the BlueConic script. Listeners on an iOS or Android app channel run inside the BlueConic SDK that shipped with that app. A listener that is only a website plugin does not run in the app, even when it is turned on in BlueConic.

Which listeners run in the SDK

These listener types include a native iOS and Android implementation:

  • Global Listener

  • Behavior Listener

  • Rule Based Form Listener

  • Visual Form Listener

  • Scoring Listener

  • Interest Ranking listener (the 1.0 listener, not Interest Ranker 2.0)

  • Preferred Hour Listener

  • Visit Listener

Other listener types run on websites. They do not run as native app listeners.

The app asks BlueConic which listeners are on and how they are configured. The code that applies that configuration is part of the SDK version compiled into the app.

Changing a property, a URL rule, or an on/off switch takes effect for the next session that can reach BlueConic. A defect in the listener logic itself is fixed only when the app ships a build that contains the SDK version with that fix. Updating the plugin in BlueConic does not update the binary already installed on phones.

Offline queueing

If the app collects a visit or a form event while it cannot reach BlueConic, the SDK keeps that update and sends it later. The usual time you see it is the next time the app is opened with a connection. The profile can change after the session you are looking at, and Last activated on the listener can move at that later open.

Known limits

Interest Ranker 2.0 is for websites and English-language content. It is not in the native SDK. For interests inside the app, use the Interest Ranking listener (1.0), which does have an SDK implementation.

Exit intent watches for a visitor leaving a web page. Those events are not produced by the app. An Exit Intent Listener on an app channel will not capture exits.

JavaScript-only rules do not apply in the native app the way they do on a site. A Behavior Listener rule that reads a page selector, jQuery, or window variable has nothing to read unless the app exposes that value to the SDK. URL and screen rules that the SDK understands are the ones to use.

Mobile web, a site opened in the phone’s browser, still uses the website script. The limits above are for the native app channel.


Did this answer your question?