Skip to content

tonyxiao/react-native-analytics

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

React Native Analytics

Written by Tal Kain tal@kain.net, Tony Xiao tonyx.ca@gmail.com and other contributors.

Based on Segment (https://segment.com) Analytics project. See iOS SDK and Android SDK.

iOS Installation

  1. Download and install the npm package by running npm install --save react-native-analytics
  2. In your Podfile, add pod "Analytics" to your project.
  3. Inside Xcode (make sure you've opened your .xcworkspace file), go to the project navigator and right click Libraries -> Add Files to [your project's name].
  4. Go to node_modules/react-native-analytics/ios -> and choose the RNAnalytics folder.
  5. Make sure your project links to libAnalytics.a (The libraries should be listed under "Build Phases -> Link Binary With Libraries". Should happen automatically if you use cocoapods).

Android Installation

  1. Download and install the npm package by running npm install --save react-native-analytics
  2. If using rnpm, run rnpm link. Otherwise add to android/app/src/main/java/com/your-app-name/MainActivity.java:
import com.facebook.react.ReactPackage;
import com.smore.RNSegmentIOAnalytics.RNSegmentIOAnalyticsPackage; // <-- add this
...

      return Arrays.<ReactPackage>asList(
        new MainReactPackage(),
        new RNSegmentIOAnalyticsPackage(), // <-- add this
        ...
      );

Usage sample

import Analytics from 'react-native-analytics'

const segmentIOWriteKey = "SEGMENT_IO_WRITE_KEY"
const flushEverySecondsCount = 1
Analytics.setup(segmentIOWriteKey, flushEverySecondsCount)
Analytics.identify("testing", {"name":"test name"})
Analytics.track("test track", {"name":"test track with name"})
Analytics.screen("test screen", {"screenType":"SCREEN NAME"})
Analytics.flush()
Analytics.reset()

Documentation

https://segment.com/docs/libraries/ios/#getting-started https://segment.com/docs/libraries/android/#getting-started

Handling possible issues

Google SDK BitCode issue

ld: '......./Pods/GoogleIDFASupport/Libraries/libAdIdAccessLibrary.a(TAGActualAdIdAccess.o)' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture arm64

There are instructions for fixing it here: https://stackoverflow.com/questions/31395260/google-analytics-libadidaccess-a-does-not-contain-bitcode

License

This project is released under the MIT License.

About

React Native wrapper for SegmentIO's Analytics SDK

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 52.4%
  • JavaScript 25.3%
  • Objective-C 19.3%
  • Ruby 3.0%