Code Examples for Android ATS Mobile
Check out some useful snippets and code examples for initialization below.
Kotlin
package com.example.testapp import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import androidx.preference.PreferenceManager import com.liveramp.ats.LRAtsManager import com.liveramp.ats.model.LRAtsConfiguration import com.liveramp.ats.model.LRCustomIdentifier import com.liveramp.ats.model.LREmailIdentifier import com.liveramp.ats.model.LRPhoneIdentifier class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // set fake consent (for testing purposes only!), this should be handled by CMP SDK // GDPR setSharedPreferencesKey( "IABTCF_TCString", "CPKZ42oPKZ5YtADABCENBlCgAP_AAAAAAAAAAwwAQAwgDDABADCAAA" ) setSharedPreferencesKey( "IABTCF_VendorConsents", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001" ) setSharedPreferencesKey("IABTCF_PurposeConsents", "1111111111") // CCPA setSharedPreferencesKey("IABUSPrivacy_String", "1-N-") // TODO: remove fake consent above after testing // init ATS SDK LRAtsManager.initialize( LRAtsConfiguration( configurationId = "40b867f9-93cc-4687-a2c7-d02bed91aaee", isTestMode = false, logToFileEnabled = false, apiKey = "" ) ) { success, error -> if (success) { // get envelope for email LRAtsManager.getEnvelope(LREmailIdentifier("test.email@liveramp.com")) { envelope, error -> // use envelope here } // or phone number LRAtsManager.getEnvelope(LRPhoneIdentifier("+14842918944")) { envelope, error -> // use envelope here } // or for id LRAtsManager.getEnvelope(LRCustomIdentifier("54321:abc123")) { envelope, error -> // use envelope here } // get dealIds for email LRAtsManger.getDealIDs(LRDealIdentifier("test.email@liveramp.com")) { dealIDResult, error -> // use dealIds here } } } } private fun setSharedPreferencesKey(key: String, value: String) { val preferences = PreferenceManager.getDefaultSharedPreferences(applicationContext) val editor = preferences.edit() editor.putString(key, value) editor.apply() } }
Java
package com.liveramp.atstestapp; import android.content.SharedPreferences; import android.os.Bundle; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import androidx.preference.PreferenceManager; import com.liveramp.ats.LRAtsManager; import com.liveramp.ats.LRError; import com.liveramp.ats.callbacks.LRCompletionHandlerCallback; import com.liveramp.ats.model.LRAtsConfiguration; import com.liveramp.ats.model.LRCustomIdentifier; import com.liveramp.ats.model.LREmailIdentifier; import com.liveramp.ats.model.LRPhoneIdentifier; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // set fake consent (for testing purposes only!), this should be handled by CMP SDK // GDPR setSharedPreferencesKey( "IABTCF_TCString", "CPKZ42oPKZ5YtADABCENBlCgAP_AAAAAAAAAAwwAQAwgDDABADCAAA" ); setSharedPreferencesKey( "IABTCF_VendorConsents", "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001" ); setSharedPreferencesKey("IABTCF_PurposeConsents", "1111111111"); // CCPA setSharedPreferencesKey("IABUSPrivacy_String", "1-N-"); // TODO: remove fake consent above after testing // init ATS SDK LRAtsManager.INSTANCE.initialize(new LRAtsConfiguration("40b867f9-93cc-4687-a2c7-d02bed91aaee", false, false, ""), new LRCompletionHandlerCallback() { @Override public void invoke(boolean success, @Nullable LRError lrError) { if (success) { // get envelope for email LRAtsManager.INSTANCE.getEnvelope(new LREmailIdentifier("test.email@liveramp.com"), (envelope, error) -> { // use envelope here }); // or phone number LRAtsManager.INSTANCE.getEnvelope(new LRPhoneIdentifier("+14842918944"), (envelope, error) -> { // use envelope here }); // or for id LRAtsManager.INSTANCE.getEnvelope(new LRCustomIdentifier("54321:abc123"), (envelope, error) -> { // use envelope here }); // get dealIds for email LRAtsManager.INSTANCE.getDealIDs(new LRDealIdentifier("test.email@liveramp.com"), (dealIDResult, lrError1) -> { // use dealIds here }); } } }); } private void setSharedPreferencesKey(String key, String value) { SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); SharedPreferences.Editor editor = preferences.edit(); editor.putString(key, value); editor.apply(); } }