THEOPlayer 🤝 Nielsen
THEOplayer-Connector-Nielsen provides an integration between the THEOplayerSDK and NielsenAppSDK & NielsenTVOSAppSDK. It connects to the Nielsen backend and reports events fired from THEOplayer instances.
Installation
Swift Package Manager
- In Xcode, install the Nielsen connector by navigating to File > Add Packages
- In the prompt that appears, select the iOS-Connector GitHub repository:
https://github.com/THEOplayer/iOS-Connector
- Select the version you want to use.
- Choose the Connector libraries you want to include in your app.
To support custom feature builds of THEOplayerSDK perform the following steps:
- Clone this repository to your computer.
- Use a local override of the
theoplayer-sdk-ios
package by selecting the folder../../Helpers/TheoSPM/theoplayer-sdk-ios
in Finder and dragging it into the Project navigator of your Xcode project. - Place your custom THEOplayerSDK.xcframework at
../../Helpers/TheoSPM/theoplayer-sdk-ios/THEOplayerSDK.xcframework
. (It is also possible to place your xcframework somewhere else. In that case make sure to update the Package.swift manifest inside the your local override so that it points to your custom THEOplayer build) - If Xcode complains about a missing xcframework
- Choose
File
>Packages
>Reset Package Caches
from the menu bar. - If it is still not working, make sure to remove any
THEOplayerSDK.xcframework
inclusions that you manually installed before installing this connector package.
- Choose
Cocoapods
- Create a Podfile if you don't already have one. From the root of your project directory, run the following command:
pod init
- To your Podfile, add links to the registries of Cocoapods and Nielsen:
source 'https://cdn.cocoapods.org/'
andsource 'https://github.com/NielsenDigitalSDK/nielsenappsdk-ios-specs-dynamic.git'
- To your Podfile, add the connector pods that you want to use in your app:
pod 'THEOplayer-Connector-Nielsen'
- Install the pods using
pod install
, then open your.xcworkspace
file to see the project in Xcode.
To support custom feature builds of THEOplayerSDK perform the following steps:
- Clone this repository to your computer.
- Use a local override of the
THEOplayerSDK-basic
pod by adding the following line to your projects Podfile:pod 'THEOplayerSDK-basic', :path => 'iOS-Connector/Helpers/TheoPod'
and make sure the path points to the TheoPod folder.
Usage
Import the THEOplayerConnectorNielsen
module
import THEOplayerConnectorNielsen
Create a Dictionary that contains the info on how to connect to your Nielsen endpoint:
let configuration = [
"appid": "XXYnnnnnn-XnnX-nXXn-nXnn-XnnnnXnnnXnX",
"appversion": "n.n",
"appname": "Theo Nielsen Sample App",
"nol_devDebug": "DEBUG"
]
Create a NielsenConnector
that uses this configuration
and your THEOplayer
instance:
let connector = NielsenConnector(
configuration: configuration,
player: yourTHEOplayer
)
Hold a reference to your connector. Once the connector is released from memory it will clean up itself and stop reporting to Nielsen.
What events does this connector report to Nielsen?
Basic playback events
THEOplayer event | NielsenAppApi report func |
---|---|
PlayerEventTypes.LOADED_META_DATA | loadMetadata(_ metadata: Any?) |
PlayerEventTypes.PAUSE | stop() |
PlayerEventTypes.SOURCE_CHANGE | end() |
PlayerEventTypes.ENDED | end() |
PlayerEventTypes.DESTROY | end() |
TextTrackEventTypes.ENTER_CUE | sendID3(_ data: String) |