react-native-tenjin
v1.2.4
Published
Tenjin is a unique growth infrastructure platform that helps you streamline your mobile marketing.
Maintainers
Readme
React Native Tenjin Plugin
Summary
The Tenjin React Native Plugin allows users to track events and installs in their iOS/Android apps. To learn more about Tenjin and our product offering, please visit https://www.tenjin.com.
Notes:
On iOS:
For AppTrackingTransparency, be sure to update your project .plist file and add NSUserTrackingUsageDescription along with the text message you want to display to users. This library is only available in iOS 14.0+. For further information on this, you can check our iOS documentation
Plugin Integration
Getting started
$ npm install react-native-tenjin --save
Mostly automatic installation
$ react-native link react-native-tenjin
Import
import Tenjin from 'react-native-tenjin';Available methods
Initialize
You need to initialize the plugin before doing calling any of the other methods available, for this, you would need the api key provided on Tenjin's dashboard:
Tenjin.initialize(apiKey)Parameters:
apiKey: String
Connect
Tenjin.connect()Set AppStore type (only available for Android)
Tenjin.setAppStore(type)Parameters:
type: String, possible values (googleplay, amazon, other)
OptIn
Tenjin.optIn()OptOut
Tenjin.optOut()OptIn with parameters
Tenjin.optIn(parameters)Parameters:
parameters: Array
OptOut with parameters
Tenjin.optOut(parameters)Parameters:
parameters: Array
OptIn and OptOut using CMP
Tenjin.optInOutUsingCMP()Opt out of Google DMA parameters
Tenjin.optOutGoogleDMA()Opt in of Google DMA parameters
Tenjin.optInGoogleDMA()Register transaction (iOS)
transactionWithReceipt(productName, currencyCode, quantity, unitPrice, transactionId, receipt)Parameters:
productName: StringcurrencyCode: Stringquantity: NumberunitPrice: NumbertransactionId: Stringreceipt: String (Base 64)
Register transaction (Android)
transactionWithDataSignature(productName, currencyCode, quantity, unitPrice, purchaseData, dataSignature)Parameters:
productName: StringcurrencyCode: Stringquantity: NumberunitPrice: NumberpurchaseData: StringdataSignature: String
Send event with name
Tenjin.eventWithName(name)Parameters:
name: String
Send event with name and value
Tenjin.eventWithNameAndValue(name, value)Parameters:
name: Stringvalue: String
LiveOps Campaigns
Tenjin supports retrieving of attributes, which are required for developers to get analytics installation id (previously known as tenjin reference id). This parameter can be used when there is no advertising id.
[!WARNING] Attribution Info is a paid feature, so please contact your Tenjin account manager if you are interested in.
Append app subversion
Tenjin.appendAppSubversion(subversion)Parameters:
subversion: Number
Customer User ID
Tenjin.setCustomerUserId(userId)Parameters:
userId: string
Tenjin.getCustomerUserId()Returns: callback -> string
Get Analytics Installation ID
Tenjin.getAnalyticsInstallationId()Returns: callback -> string
Impression Level Revenue Data Integration (ILRD)
Tenjin supports the ability to integrate with the Impression Level Ad Revenue (ILRD) feature from,
- AppLovin
- Unity LevelPlay
- AdMob
- TopOn
- Clever Ads Solutions (CAS)
- TradPlus
[!WARNING] ILRD is a paid feature, so please contact your Tenjin account manager to discuss the price at first before sending ILRD events.
Send Google DMA Parameters
Tenjin.setGoogleDMAParametersWithAdPersonalization(adPersonalization, adUserData)Parameters:
adPersonalization: BooleanadUserData: Boolean
SKAdNetwork and Conversion value (iOS)
As part of SKAdNetwork, we created a wrapper method for updatePostbackConversionValue(conversionValue: Integer).
Our method will register the equivalent SKAdNetwork methods and also send the conversion values to our servers.
updatePostbackConversionValue(conversionValue: Integer) 6 bit value should correspond to the in-app event and shouldn’t be entered as binary representation but 0-63 integer.
As of iOS 16.1, which supports SKAdNetwork 4.0, you can now send coarseValue (String, with possible variants being "low", "medium" or "high") and lockWindow (Boolean) as parameters on the update postback method:
updatePostbackConversionValue(conversionValue: Integer, coarseValue: String)
updatePostbackConversionValue(conversionValue: Integer, coarseValue: String, lockWindow: Bool)
For iOS version 16.1+ which supports SKAdNetwork 4.0, you can call this method as many times as you want and can make the conversion value lower or higher than the previous value.
For iOS versions lower than 16.1 supporting SKAdnetWork versions lower than 4.0, you can call this method and our SDK will automatically detect the iOS version and update
conversionValueonly.
Support
If you have any issues with the plugin integration or usage, please contact us to [email protected]
