Migration Guide for Existing Teads SDK Users
Welcome to the Teads Unified SDK! If you're currently using Teads SDK v5.x.x, this guide will help you understand what's new and how to take advantage of the enhanced features while maintaining full backward compatibility.
Key Points
✅ No Breaking Changes - Your existing code continues to work without modifications
✅ New Placements Available - Access to Feed and Recommendations placements
✅ Enhanced Event System - More granular event tracking and monitoring
✅ Complete Backward Compatibility - All existing APIs remain fully functional
Compatibility Matrix
| Feature | Teads SDK v5.x.x | Unified SDK v6.0.0 | Notes |
|---|---|---|---|
| Media Placement | ✅ | ✅ | Fully backward compatible |
| inFeed Native Placement | ✅ | ✅ | Fully backward compatible |
| User Consent Signals Management | ✅ | ✅ | Fully backward compatible |
| Media | ❌ | ✅ | New placement type that encapsulates inRead |
| Media Native | ❌ | ✅ | New placement type that encapsulates inFeed Native |
| Feed | ❌ | ✅ | New placement |
| Recommendations | ❌ | ✅ | New placement |
| Unified Ad Lifecycle Events | ❌ | ✅ | New optional interface |
What's New for You
1. Current Placements Updates
While your existing code still works, you now have access to new interfaces:
| Legacy Placement | New Unified Placement | Description | What is New |
|---|---|---|---|
| Media | Media Placement | In-content ads that integrate with editorial content | Ad resizing can now be handled under the hood. New ad lifecycle event interface. More straightforward way to request and load ads. |
| InFeed Native | Media Native Placement | Native ads with custom layouts | New Ad Lifecycle event interface. More straightforward way to request and load ads. |
Previous Approach (Still Works)
// Traditional Teads SDK approach - still fully supported
val inReadPlacement = TeadsSDK.createInReadPlacement(
applicationContext,
84242,
placementSettings
)
inReadPlacement.requestAd(
adRequestSettings,
inReadListenerCallback,
videoPlaybackListenerCallback
)
New Approach (Recommended)
// New unified interface - cleaner and more intuitive
val config = TeadsAdPlacementMediaConfig(
pid = 84242,
articleUrl = "https://yoursite.com/article".toUri()
)
val mediaPlacement = TeadsAdPlacementMedia(this, config, teadsAdPlacementEventsDelegateCallback)
val adView = mediaPlacement.loadAd()
Full Media and Media Native integrations: Media and Media Native.
2. Unified Ad Lifecycle Event System
The new unified event system provides consistent event handling across all placement types:
- Kotlin
- Java
class MyActivity : AppCompatActivity(), TeadsAdPlacementEventsDelegate {
override fun onPlacementEvent(
placement: TeadsAdPlacement<*, *>,
event: TeadsAdPlacementEventName,
data: Map<String, Any>?
) {
// Listen the ad lifecycle
Log.d("TeadsSDK", "Event: $event from $placement with data $data")
}
}
public class MyActivity extends AppCompatActivity implements TeadsAdPlacementEventsDelegate {
@Override
public void onPlacementEvent(
TeadsAdPlacement<?, ?> placement,
TeadsAdPlacementEventName event,
Map<String, ?> data
) {
// Listen the ad lifecycle
Log.d("TeadsSDK", "Event: " + event + " from " + placement + " with data " + data);
}
}
Full event list and click-URL rules: Placement Events.
New Placements
v6 adds Feed and Recommendations. Use the format pages:
Common Questions
Q: Do I need to update my existing code?
A: No. Your existing code continues to work without any changes. Migration is optional.
Q: Can I use both old and new APIs in the same app?
A: Yes. Both APIs can coexist in the same application without issues.
Q: Will the old APIs be deprecated?
A: All existing APIs remain fully functional, but are planned to be deprecated later.
Q: Is there a performance benefit to migrating?
A: Minor improvements. The new APIs have some optimizations but the difference is minimal.
Q: Can I access Feed and Recommendations placements with the old API?
A: No. It is required the new unified API.
Q: How do I handle privacy settings?
A: Check the guide Privacy & Compliance.
Migration Checklist
- Update to Teads SDK v6.2.0. See Installation.
- Test existing implementations to confirm they still work
- Identify opportunities to add Feed and Recommendations placements
- Plan gradual migration for existing placements
- Implement new unified event handling
- Add advanced privacy management (optional)
- Test thoroughly in development environment
- Monitor performance and events in production
Support
If you encounter any issues during migration:
- Check the Integration Guide for detailed examples
- Contact Support for assistance
Remember: Migration is optional. Your existing code continues to work, and you can adopt new features at your own pace.
Happy coding with the enhanced Teads Unified SDK!