Skip to content

Device info

Affise.GetRandomUserId();

API: public static string? GetRandomUserId()Runtime/Affise.cs:175. Example verbatim from.

Affise.GetRandomDeviceId();

API: public static string? GetRandomDeviceId()Runtime/Affise.cs:184. Example verbatim from.

public abstract class AffiseError : Exception (Runtime/Exceptions/AffiseError.cs:6) defines well-known return strings:

| Constant | Value | |---|---| | UUID_NOT_INITIALIZED | 11111111-1111-1111-1111-111111111111 (line 9) | | UUID_NO_VALID_METHOD | 22222222-2222-2222-2222-222222222222 (line 10) | | MESSAGE_ALREADY_INITIALIZED (internal) | "Affise SDK is already initialized" (line 8) |

In the Unity C# implementation (Runtime/Affise.cs:175-182), GetRandomUserId uses null-conditional chains and returns null when the SDK is not initialized — it does not produce the UUID_NOT_INITIALIZED sentinel. Native iOS / Android layers may still return the sentinel values.

Affise.IsFirstRun();

API: public static bool IsFirstRun()Runtime/Affise.cs:202. Example verbatim from.

var providers = Affise.GetProviders();
var key = ProviderType.AFFISE_APP_TOKEN;
if (providers.ContainsKey(key)) {
var value = providers[key];
}

API: public static Dictionary<ProviderType, object?> GetProviders()Runtime/Affise.cs:193. Example verbatim from.

Behavior:

Return Empty Map if Affise SDK not initialized.

public enum ProviderType (Runtime/Parameters/ProviderType.cs:6), with public static class ProviderTypeExt at Runtime/Parameters/ProviderType.cs:121.

README groups:

AFFISE_APP_ID, AFFISE_PKG_APP_NAME, AFF_APP_NAME_DASHBOARD, APP_VERSION, APP_VERSION_RAW, STORE, TRACKER_TOKEN, TRACKER_NAME, FIRST_TRACKER_TOKEN, FIRST_TRACKER_NAME, LAST_TRACKER_TOKEN, LAST_TRACKER_NAME, OUTDATED_TRACKER_TOKEN, INSTALLED_TIME, FIRST_OPEN_TIME, INSTALLED_HOUR, FIRST_OPEN_HOUR, INSTALL_FIRST_EVENT, INSTALL_BEGIN_TIME, INSTALL_FINISH_TIME, REFERRER_INSTALL_VERSION, REFERRAL_TIME, REFERRER_CLICK_TIME, REFERRER_CLICK_TIME_SERVER, REFERRER_GOOGLE_PLAY_INSTANT, CREATED_TIME, CREATED_TIME_MILLI, CREATED_TIME_HOUR, UNINSTALL_TIME, REINSTALL_TIME, LAST_SESSION_TIME, CPU_TYPE, HARDWARE_NAME, DEVICE_MANUFACTURER, DEEPLINK_CLICK, DEVICE_ATLAS_ID, AFFISE_DEVICE_ID, AFFISE_ALT_DEVICE_ID, REFTOKEN, REFTOKENS, REFERRER, REFERRER_UPDATED, USER_AGENT, MCCODE, MNCODE, REGION, COUNTRY, LANGUAGE, DEVICE_NAME, DEVICE_TYPE, OS_NAME, PLATFORM, SDK_PLATFORM, API_LEVEL_OS, AFFISE_SDK_VERSION, OS_VERSION, RANDOM_USER_ID, AFFISE_SDK_POS, TIMEZONE_DEV, AFFISE_EVENT_NAME, AFFISE_EVENT_TOKEN, LAST_TIME_SESSION, TIME_SESSION, AFFISE_SESSION_COUNT, LIFETIME_SESSION_COUNT, AFFISE_DEEPLINK, AFFISE_PART_PARAM_NAME, AFFISE_PART_PARAM_NAME_TOKEN, AFFISE_APP_TOKEN, LABEL, AFFISE_SDK_SECRET_ID, UUID, AFFISE_APP_OPENED, PUSHTOKEN, PUSHTOKEN_SERVICE, AFFISE_EVENTS_COUNT, AFFISE_SDK_EVENTS_COUNT, AFFISE_METRICS_EVENTS_COUNT, AFFISE_INTERNAL_EVENTS_COUNT, IS_ROOTED, IS_EMULATOR.

AD_SERVICE_ATTRIBUTION.

GAID_ADID, GAID_ADID_MD5, ADID, ALTSTR_ADID, FIREOS_ADID, COLOROS_ADID.

ANDROID_ID, ANDROID_ID_MD5.

OAID, OAID_MD5.

META.

MAC_SHA1, MAC_MD5, CONNECTION_TYPE, PROXY_IP_ADDRESS.

NETWORK_TYPE, ISP.

Use Affise.Module.GetStatus(...) to inspect the live state of any module:

Affise.Module.GetStatus(AffiseModules.Status, response => {
// handle response
});

Signatures:

  • IAffiseAttributionModuleApi.GetStatus(AffiseModules module, OnKeyValueCallback onComplete)Runtime/Module/Attribution/IAffiseAttributionModuleApi.cs:25 / Runtime/Module/Attribution/AffiseAttributionModule.cs:42
  • IAffiseAttributionModuleApi.GetModulesInstalled() : List<AffiseModules>Runtime/Module/Attribution/IAffiseAttributionModuleApi.cs:30
  • public delegate void OnKeyValueCallback(List<AffiseKeyValue> data)Runtime/Modules/OnKeyValueCallback.cs:5
  • public class AffiseKeyValue { public string Key; public string Value; }Runtime/Modules/AffiseKeyValue.cs:6