/** * Builds data in conversion link based on class member values, to be encrypted. * * @return URL-encoded string based on class settings. */ public static synchronized String buildDataUnencrypted(TuneEvent eventData) { params = TuneParameters.getInstance(); StringBuilder link = new StringBuilder(); link.append(TuneUrlKeys.CONNECTION_TYPE + "=" + params.getConnectionType()); safeAppend(link, TuneUrlKeys.ANDROID_ID, params.getAndroidId()); safeAppend(link, TuneUrlKeys.ANDROID_ID_MD5, params.getAndroidIdMd5()); safeAppend(link, TuneUrlKeys.ANDROID_ID_SHA1, params.getAndroidIdSha1()); safeAppend(link, TuneUrlKeys.ANDROID_ID_SHA256, params.getAndroidIdSha256()); safeAppend(link, TuneUrlKeys.APP_AD_TRACKING, params.getAppAdTrackingEnabled()); safeAppend(link, TuneUrlKeys.APP_NAME, params.getAppName()); safeAppend(link, TuneUrlKeys.APP_VERSION, params.getAppVersion()); safeAppend(link, TuneUrlKeys.APP_VERSION_NAME, params.getAppVersionName()); safeAppend(link, TuneUrlKeys.COUNTRY_CODE, params.getCountryCode()); safeAppend(link, TuneUrlKeys.DEVICE_BRAND, params.getDeviceBrand()); safeAppend(link, TuneUrlKeys.DEVICE_BUILD, params.getDeviceBuild()); safeAppend(link, TuneUrlKeys.DEVICE_CARRIER, params.getDeviceCarrier()); safeAppend(link, TuneUrlKeys.DEVICE_CPU_TYPE, params.getDeviceCpuType()); safeAppend(link, TuneUrlKeys.DEVICE_CPU_SUBTYPE, params.getDeviceCpuSubtype()); safeAppend(link, TuneUrlKeys.DEVICE_MODEL, params.getDeviceModel()); safeAppend(link, TuneUrlKeys.DEVICE_ID, params.getDeviceId()); safeAppend(link, TuneUrlKeys.FIRE_AID, params.getFireAdvertisingId()); safeAppend(link, TuneUrlKeys.FIRE_AD_TRACKING_DISABLED, params.getFireAdTrackingLimited()); safeAppend(link, TuneUrlKeys.GOOGLE_AID, params.getGoogleAdvertisingId()); safeAppend(link, TuneUrlKeys.GOOGLE_AD_TRACKING_DISABLED, params.getGoogleAdTrackingLimited()); safeAppend(link, TuneUrlKeys.INSTALL_DATE, params.getInstallDate()); safeAppend(link, TuneUrlKeys.INSTALLER, params.getInstaller()); safeAppend(link, TuneUrlKeys.INSTALL_REFERRER, params.getInstallReferrer()); safeAppend(link, TuneUrlKeys.LANGUAGE, params.getLanguage()); safeAppend(link, TuneUrlKeys.LAST_OPEN_LOG_ID, params.getLastOpenLogId()); if (params.getLocation() != null) { safeAppend(link, TuneUrlKeys.ALTITUDE, Double.toString(params.getLocation().getAltitude())); safeAppend(link, TuneUrlKeys.LATITUDE, Double.toString(params.getLocation().getLatitude())); safeAppend(link, TuneUrlKeys.LONGITUDE, Double.toString(params.getLocation().getLongitude())); } else { safeAppend(link, TuneUrlKeys.ALTITUDE, params.getAltitude()); safeAppend(link, TuneUrlKeys.LATITUDE, params.getLatitude()); safeAppend(link, TuneUrlKeys.LONGITUDE, params.getLongitude()); } safeAppend(link, TuneUrlKeys.LOCALE, params.getLocale()); safeAppend(link, TuneUrlKeys.MAC_ADDRESS, params.getMacAddress()); safeAppend(link, TuneUrlKeys.MAT_ID, params.getMatId()); safeAppend(link, TuneUrlKeys.MOBILE_COUNTRY_CODE, params.getMCC()); safeAppend(link, TuneUrlKeys.MOBILE_NETWORK_CODE, params.getMNC()); safeAppend(link, TuneUrlKeys.OPEN_LOG_ID, params.getOpenLogId()); safeAppend(link, TuneUrlKeys.OS_VERSION, params.getOsVersion()); safeAppend(link, TuneUrlKeys.SDK_PLUGIN, params.getPluginName()); safeAppend(link, TuneUrlKeys.PURCHASE_STATUS, params.getPurchaseStatus()); safeAppend(link, TuneUrlKeys.REFERRER_DELAY, params.getReferrerDelay()); safeAppend(link, TuneUrlKeys.SCREEN_DENSITY, params.getScreenDensity()); safeAppend( link, TuneUrlKeys.SCREEN_SIZE, params.getScreenWidth() + "x" + params.getScreenHeight()); safeAppend(link, TuneUrlKeys.SDK_VERSION, params.getSdkVersion()); safeAppend(link, TuneUrlKeys.TRUSTE_ID, params.getTRUSTeId()); safeAppend(link, TuneUrlKeys.USER_AGENT, params.getUserAgent()); // Append event-level params safeAppend(link, TuneUrlKeys.ATTRIBUTE1, eventData.getAttribute1()); safeAppend(link, TuneUrlKeys.ATTRIBUTE2, eventData.getAttribute2()); safeAppend(link, TuneUrlKeys.ATTRIBUTE3, eventData.getAttribute3()); safeAppend(link, TuneUrlKeys.ATTRIBUTE4, eventData.getAttribute4()); safeAppend(link, TuneUrlKeys.ATTRIBUTE5, eventData.getAttribute5()); safeAppend(link, TuneUrlKeys.CONTENT_ID, eventData.getContentId()); safeAppend(link, TuneUrlKeys.CONTENT_TYPE, eventData.getContentType()); // Event-level currency overrides TUNE class-level if (eventData.getCurrencyCode() != null) { safeAppend(link, TuneUrlKeys.CURRENCY_CODE, eventData.getCurrencyCode()); } else { safeAppend(link, TuneUrlKeys.CURRENCY_CODE, params.getCurrencyCode()); } if (eventData.getDate1() != null) { safeAppend(link, TuneUrlKeys.DATE1, Long.toString(eventData.getDate1().getTime() / 1000)); } if (eventData.getDate2() != null) { safeAppend(link, TuneUrlKeys.DATE2, Long.toString(eventData.getDate2().getTime() / 1000)); } if (eventData.getDeviceForm() != null) { safeAppend(link, TuneUrlKeys.DEVICE_FORM, eventData.getDeviceForm()); } if (eventData.getLevel() != 0) { safeAppend(link, TuneUrlKeys.LEVEL, Integer.toString(eventData.getLevel())); } if (eventData.getQuantity() != 0) { safeAppend(link, TuneUrlKeys.QUANTITY, Integer.toString(eventData.getQuantity())); } if (eventData.getRating() != 0) { safeAppend(link, TuneUrlKeys.RATING, Double.toString(eventData.getRating())); } safeAppend(link, TuneUrlKeys.REF_ID, eventData.getRefId()); safeAppend(link, TuneUrlKeys.REVENUE, Double.toString(eventData.getRevenue())); safeAppend(link, TuneUrlKeys.SEARCH_STRING, eventData.getSearchString()); // Append user information safeAppend(link, TuneUrlKeys.AGE, params.getAge()); safeAppend(link, TuneUrlKeys.EXISTING_USER, params.getExistingUser()); safeAppend(link, TuneUrlKeys.FACEBOOK_USER_ID, params.getFacebookUserId()); safeAppend(link, TuneUrlKeys.GENDER, params.getGender()); safeAppend(link, TuneUrlKeys.GOOGLE_USER_ID, params.getGoogleUserId()); safeAppend(link, TuneUrlKeys.IS_PAYING_USER, params.getIsPayingUser()); safeAppend(link, TuneUrlKeys.TWITTER_USER_ID, params.getTwitterUserId()); safeAppend(link, TuneUrlKeys.USER_EMAIL_MD5, params.getUserEmailMd5()); safeAppend(link, TuneUrlKeys.USER_EMAIL_SHA1, params.getUserEmailSha1()); safeAppend(link, TuneUrlKeys.USER_EMAIL_SHA256, params.getUserEmailSha256()); safeAppend(link, TuneUrlKeys.USER_ID, params.getUserId()); safeAppend(link, TuneUrlKeys.USER_NAME_MD5, params.getUserNameMd5()); safeAppend(link, TuneUrlKeys.USER_NAME_SHA1, params.getUserNameSha1()); safeAppend(link, TuneUrlKeys.USER_NAME_SHA256, params.getUserNameSha256()); safeAppend(link, TuneUrlKeys.USER_PHONE_MD5, params.getPhoneNumberMd5()); safeAppend(link, TuneUrlKeys.USER_PHONE_SHA1, params.getPhoneNumberSha1()); safeAppend(link, TuneUrlKeys.USER_PHONE_SHA256, params.getPhoneNumberSha256()); return link.toString(); }