adjust-icon

Google On-device Conversion Measurement

With Google On-device Conversion Measurement (ODM), you can attribute ads served on Google iOS apps to corresponding app installs in a way that enhances measurement accuracy while preserving user privacy. This approach ensures that neither the individual user, the device, nor the app is identifiable by you or Google.

To enable Google On-device Conversion Measurement, you need to add the following dependencies to your app’s target inside of the Podfile:

# Resolve react_native_pods.rb with node to allow for hoisting
require Pod::Executable.execute_command('node', ['-p',
'require.resolve(
"react-native/scripts/react_native_pods.rb",
{paths: [process.argv[1]]},
)', __dir__]).strip
platform :ios, min_ios_version_supported
prepare_react_native_project!
linkage = ENV['USE_FRAMEWORKS']
if linkage != nil
Pod::UI.puts "Configuring Pod with #{linkage}ally linked Frameworks".green
use_frameworks! :linkage => linkage.to_sym
end
target 'AdjustExample' do
pod 'Adjust/AdjustGoogleOdm'
pod 'GoogleAdsOnDeviceConversion', '2.0.0'
config = use_native_modules!
use_react_native!(
:path => config[:reactNativePath],
# An absolute path to your application root.
:app_path => "#{Pod::Config.instance.installation_root}/.."
)
target 'AdjustExampleTests' do
inherit! :complete
# Pods for testing
end
post_install do |installer|
react_native_post_install(
installer,
config[:reactNativePath],
:mac_catalyst_enabled => false,
# :ccache_enabled => true
)
end
end

If you are using the Firebase Analytics 11.14.0 and newer, you do not need to add the GoogleAdsOnDeviceConversion dependency manually, as it is automatically included in your app.

Capturing app launch time

One of the most critical factors for accurate attribution using On-device Conversion Measurement is capturing the app launch time as precisely as possible. The Adjust SDK handles this automatically during its initialization process. Therefore, it is essential to call the initSdk method as early as possible in your app’s launch sequence.

If you need to delay the start of the Adjust SDK, it is still strongly recommended to invoke the initSdk method promptly and use the First Session Delay feature to coordinate the actual start of the SDK with your app’s logic.