1.0.1 โ€ข Published 4 years ago

@appsflyer-test-2modes/strict v1.0.1

Weekly downloads
-
License
ISC
Repository
github
Last release
4 years ago

React Native AppsFlyer plugin for Android and iOS - Strict.

๐Ÿ›  In order for us to provide optimal support, we would kindly ask you to submit any issues to support@appsflyer.com

When submitting an issue please specify your AppsFlyer sign-up (account) email , your app ID , production steps, logs, code snippets and any additional relevant information.

npm version License: MIT Downloads

Table of content

This plugin is built for

  • iOS AppsFlyerSDK v6.3.0
  • Android AppsFlyerSDK v6.3.0

โ— Breaking Changes

  • From version 6.3.0, we use xcframework for iOS platform, then you need to use cocoapods version >= 1.10

  • From version 6.2.30, logCrossPromotionAndOpenStore api will register as af_cross_promotion instead of af_app_invites in your dashboard. Click on a link that was generated using generateInviteLink api will be register as af_app_invites.

  • We have renamed the following APIs:

Old APINew API
trackEventlogEvent
trackLocationlogLocation
stopTrackingstop
trackCrossPromotionImpressionlogCrossPromotionImpression
trackAndOpenStorelogCrossPromotionAndOpenStore
setDeviceTrackingDisabledanonymizeUser
AppsFlyerTrackerAppsFlyerLib

And removed the following ones:

  • trackAppLaunch -> no longer needed. See new init guide
  • sendDeepLinkData -> no longer needed. See new init guide
  • enableUninstallTracking -> no longer needed. See new uninstall measurement guide

If you have used 1 of the removed APIs, please check the integration guide for the updated instructions

๐Ÿ“ฒ Adding the SDK to your project

Production version from npm:

$ npm install react-native-appsflyer --save

Then run the following:

iOS

$ cd ios && pod install
$ react-native run-ios

Android

$ react-native run-android

Starting from RN [v0.60](https://facebook.github.io/react-native/blog/2019/07/03/version-60), and react-native-appsflyer v1.4.7 the plugin uses [autolinking](https://github.com/react-native-community/cli/blob/master/docs/autolinking.md). If your app does not support autolinking, check out the Installation Guide [here](./Docs/Installation.md).

๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ Add or Remove Strict mode for App-kids

Starting from version 6.1.10 iOS SDK comes in two variants: Strict mode and Regular mode. Please read more [here](https://support.appsflyer.com/hc/en-us/articles/207032066#integration-strict-mode-sdk)

Change to Strict mode After you [installed](#installation) the AppsFlyer plugin, go to the react-native-appsflyer folder inside the node_modules folder:

cd node_modules/react-native-appsflyer

Run the script changeMode.sh strict

./changeMode.sh strict

Go to the ios folder in your root project

cd ../../ios

Run pod install

Change to Regular mode Go to the react-native-appsflyer folder inside the node_modules folder:

cd node_modules/react-native-appsflyer

Run the script changeMode.sh (WITHOUT strict)

./changeMode.sh

Go to the ios folder in your root project

cd ../../ios

Run pod install

๐Ÿš€ Initializing the SDK

Initialize the SDK to enable AppsFlyer to detect installations, sessions (app opens) and updates. NOTE! for iOS 14.5, we use timeToWaitForATTUserAuthorization parameter. Please read more [here](https://support.appsflyer.com/hc/en-us/articles/207032066-iOS-SDK-V6-X-integration-guide-for-developers#integration-33-configuring-app-tracking-transparency-att-support)

import React, {Component} from 'react';
import {Platform, StyleSheet, Text, View} from 'react-native';
import appsFlyer from 'react-native-appsflyer';

appsFlyer.initSdk(
  {
    devKey: 'K2***********99',
    isDebug: false,
    appId: '41*****44',
    onInstallConversionDataListener: true, //Optional
    onDeepLinkListener: true, //Optional
    timeToWaitForATTUserAuthorization: 10 //for iOS 14.5
  },
  (result) => {
    console.log(result);
  },
  (error) => {
    console.error(error);
  }
);
SettingDescription
devKeyYour application [devKey](https://support.appsflyer.com/hc/en-us/articles/211719806-Global-app-settings-#sdk-dev-key) provided by AppsFlyer (required)
appIdYour iTunes [application ID](https://support.appsflyer.com/hc/en-us/articles/207377436-Adding-a-new-app#available-in-the-app-store-google-play-store-windows-phone-store) (iOS only)
isDebugDebug mode - set to true for testing only
onInstallConversionDataListenerSet listener for SDK init response (Optional. default=true)
onDeepLinkListenerSet listener for DDL response (Optional. default=false)
timeToWaitForATTUserAuthorizationTime for the sdk to wait before launch. please read more [Here](https://support.appsflyer.com/hc/en-us/articles/207032066-iOS-SDK-V6-X-integration-guide-for-developers#additional-apis-configuring-app-tracking-transparency-att-support)

๐Ÿ“– Guides

Great installation and setup guides can be viewed [here](/Docs/Guides.md).

  • [init SDK Guide](/Docs/Guides.md#init-sdk)
  • [Deeplinking Guide](/Docs/Guides.md#deeplinking)
  • [Uninstall Guide](/Docs/Guides.md#measure-app-uninstalls)

๐Ÿ“‘ API

See the full [API](/Docs/API.md) available for this plugin.