Skip to main content

Prerequisites & Setup Checklist

info

Before You Begin: This checklist ensures you have all the necessary prerequisites and configurations in place for a successful Teads React Native SDK integration.

Development Environment Requirements

React Native

  • React Native 0.70+ (recommended)
  • Node.js 16+ (LTS version recommended)
  • npm 7+ or yarn 1.22+

iOS Development

  • macOS (required for iOS development)
  • Xcode 16.4+ (recommended)
  • iOS 14.0+ (deployment target)
  • CocoaPods 1.11+
  • Swift 5.0+

Android Development

  • Android Studio (latest stable version)
  • Android SDK with API level 21+ (Android 5.0+)
  • Java 17+ (JDK 17 or higher)
  • Gradle 7.0+
  • minSdkVersion 21+

Mandatory Global Checklist

Follow these essential requirements to ensure a successful integration and optimal performance:

1. SDK Version

  • Use the latest SDK version from npm: outbrain-react-native
  • Verify compatibility with your React Native version
  • Check for any breaking changes in the latest release notes
  • Review the migration guide if upgrading from the old Outbrain SDK

2. Ad Display Requirements

  • Ensure ads are fully visible, clickable, and start properly
  • No element should cover the player, not even transparent ones
  • Test ad visibility across different device orientations
  • Verify ads work correctly in ScrollView and FlatList components
  • Test on both iOS and Android platforms

3. Brand Safety Configuration

  • Enable brand safety by providing valid article URLs
  • Use the articleUrl prop for Feed Placement
  • Use the url prop for Media Placement
  • Ensure URLs are accessible from all target regions
  • Provide contextually relevant URLs for better ad targeting

4. App-ads.txt Setup

  • Set up app-ads.txt for your app's website domain
  • Include Teads entry: teads.tv, YOUR_PUBLISHER_ID, DIRECT, 15a9c44f6d26cbe1
  • Verify file is publicly accessible at your domain root
  • Contact your account manager for your publisher ID

5. Privacy Compliance

  • Enable GDPR/CCPA/GPP privacy compliance when applicable
  • Implement proper consent management
  • Configure consent strings according to IAB specifications
  • Test consent flow in all target regions
  • Handle user privacy preferences appropriately

6. App Tracking Transparency (iOS)

  • Satisfy App Tracking Transparency requirements (iOS 14.5+)
  • Implement proper ATT permission requests
  • Handle user consent responses appropriately
  • Configure IDFA usage according to user preferences
  • Add NSUserTrackingUsageDescription to Info.plist

7. Native Module Configuration

  • iOS: Ensure CocoaPods dependencies are installed (pod install)
  • Android: Verify Maven repositories are configured correctly
  • Both: Test that native modules are properly linked
  • Verify build configurations match requirements

8. Integration Validation

  • Validate the integration on both iOS and Android
  • Test all placement types (Feed, Media)
  • Verify event handlers are working correctly
  • Test height changes and dynamic sizing
  • Verify click handling and navigation

Pre-Release Testing Checklist

Before releasing your app to production, ensure thorough testing:

Test Configuration Testing

  • Test with different test configurations
  • Use Media Placement test PIDs (e.g., 84242)
  • Test Feed Placement configurations (MB_1, MB_2, TEST_FEED)
  • Verify all placement types work correctly on both platforms
  • Test with both production and test partner keys

Device and Environment Testing

  • Test on multiple device types (iPhone, iPad, various Android devices)
  • Test on different OS versions (minimum supported and latest)
  • Test in different network conditions (WiFi, cellular, poor connection)
  • Test with different user consent scenarios
  • Test on both iOS Simulator and Android Emulator
  • Important: Always test on real devices before release

Cross-Platform Testing

  • Verify consistent behavior between iOS and Android
  • Test event handling on both platforms
  • Verify height changes work correctly on both platforms
  • Test dark mode on both platforms
  • Ensure UI rendering is consistent

Performance Testing

  • Monitor app performance with ads enabled
  • Check memory usage and potential leaks
  • Test app launch time and responsiveness
  • Verify battery usage is within acceptable limits
  • Test with multiple placements on the same screen

User Experience Testing

  • Test ad loading times and user experience
  • Verify ads don't interfere with app functionality
  • Test ad interactions (clicks, video playback)
  • Ensure proper error handling and fallbacks
  • Test scrolling performance with ads

React Native Specific Requirements

TypeScript Support

  • TypeScript (optional but recommended)
  • Full type definitions are included in the package
  • Import types from outbrain-react-native:
    import type {
    TeadsAdPlacementHandler,
    TeadsAdPlacementFeedProps,
    TeadsAdPlacementMediaProps,
    } from 'outbrain-react-native';

Event Handling

  • Implement event handlers for user interactions
  • Handle height changes for dynamic ad sizing
  • Implement proper click handling
  • Test event propagation and cleanup

Multiple Placements

  • Use widgetIndex for multiple Feed Placements on the same page
  • Ensure unique widget IDs for different placements
  • Test multiple placements simultaneously
  • Verify no conflicts between placements

Common Issues to Avoid

Integration Issues

  • Don't use test PIDs in production
  • Don't forget to handle event listeners cleanup
  • Don't ignore SDK initialization requirements
  • Don't skip proper error handling implementation
  • Don't forget to test on both iOS and Android

Configuration Issues

  • Don't forget to set proper placement IDs
  • Don't ignore privacy compliance requirements
  • Don't skip app-ads.txt implementation
  • Don't forget to update Maven repositories (Android)
  • Don't forget to run pod install after package installation (iOS)

React Native Specific Issues

  • Don't forget to rebuild native code after package installation
  • Don't mix old and new SDK components
  • Don't forget to handle component unmounting
  • Don't ignore TypeScript type errors
  • Don't forget to test on both platforms

App Submission for Review

Before going live, submit your app to Teads for review to ensure your integration meets quality standards:

  • Contact your publisher manager to learn how to submit your app for review
  • This review helps verify critical aspects of your integration, such as viewability and brand safety, are working as expected
info

Required for Review: Provide debuggable builds for both iOS and Android for network traffic inspection during the review process.

Next Steps

After completing this checklist:

  1. Review Installation Guide: Follow the Installation Guide for detailed setup steps
  2. Review Integration Guide: Follow the Integration Guide for detailed implementation steps
  3. Test Thoroughly: Test on both iOS and Android platforms
  4. Stay Updated: Subscribe to SDK release notifications and update regularly

Support

If you encounter issues during setup:


tip

Pro Tip: Keep this checklist handy during development and refer to it before each release to ensure nothing is missed. Always test on both iOS and Android platforms before releasing.