SDK do Unreal Engine - Referência de configuração
Configure o Singular SDK do Unreal Engine por meio dos parâmetros do método Inicializar. Esta referência documenta todas as opções de configuração disponíveis com seus tipos, valores padrão e exemplos de uso.
apiKey
Chave de API (obrigatório)
Sua chave de API do Singular obtida no painel do Singular. Isso é necessário para inicializar o SDK e identificar seu aplicativo.
Assinatura
FString apiKey
Exemplo de uso
FString ApiKey = TEXT("your_singular_api_key");
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
// ... other parameters
);
apiSecret
Segredo da API (obrigatório)
Seu Singular API Secret obtido no painel do Singular. Isso é necessário para inicializar o SDK e autenticar seu aplicativo.
Assinatura
FString apiSecret
Exemplo de uso
FString ApiSecret = TEXT("your_singular_api_secret");
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
// ... other parameters
);
clipboardAttribution
Atribuição da área de transferência
Permite a leitura da área de transferência para suportar a atribuição de Links Universais do iOS para uma melhor precisão de rastreamento (somente iOS).
Assinatura
bool clipboardAttribution
// Default: false
Exemplo de utilização
// Enable clipboard attribution for iOS
bool ClipboardAttribution = true;
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
60, // sessionTimeout
TEXT(""), // customUserId
true, // skAdNetworkEnabled
false, // manualSkanConversionManagement
0, // waitForTrackingAuthorizationWithTimeoutInterval
false, // oaidCollection
false, // enableLogging
0, // logLevel
ClipboardAttribution, // Enable clipboard attribution
TEXT(""), // facebookAppId
TEXT("") // customSdid
);
customSdid
ID de dispositivo único personalizado
Define um SDID (Singular Device ID) personalizado em vez de usar o identificador de dispositivo gerado automaticamente.
Assinatura
FString customSdid
// Default: TEXT("")
Exemplo de utilização
// Set custom SDID
FString CustomSdid = TEXT("custom_device_id_12345");
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
60, // sessionTimeout
TEXT(""), // customUserId
true, // skAdNetworkEnabled
false, // manualSkanConversionManagement
0, // waitForTrackingAuthorizationWithTimeoutInterval
false, // oaidCollection
false, // enableLogging
0, // logLevel
false, // clipboardAttribution
TEXT(""), // facebookAppId
CustomSdid // Custom SDID
);
customUserId
ID de utilizador personalizado
Defina um identificador de utilizador personalizado na inicialização para controlar os utilizadores nos dispositivos utilizando o seu próprio sistema de ID.
Assinatura
FString customUserId
// Default: TEXT("")
Exemplo de utilização
// Set custom user ID at initialization
FString CustomUserId = TEXT("user_xyz789");
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
60, // sessionTimeout
CustomUserId, // Set custom user ID
true, // skAdNetworkEnabled
false, // manualSkanConversionManagement
0, // waitForTrackingAuthorizationWithTimeoutInterval
false, // oaidCollection
false, // enableLogging
0, // logLevel
false, // clipboardAttribution
TEXT(""), // facebookAppId
TEXT("") // customSdid
);
enableLogging
Ativar o registo
Ativar o registo do SDK para fins de depuração. Deve ser desativado em compilações de produção.
Assinatura
bool enableLogging
// Default: false
Exemplo de utilização
// Enable logging for development builds
bool EnableLogging = true;
int LogLevel = 5; // Verbose logging
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
60, // sessionTimeout
TEXT(""), // customUserId
true, // skAdNetworkEnabled
false, // manualSkanConversionManagement
0, // waitForTrackingAuthorizationWithTimeoutInterval
false, // oaidCollection
EnableLogging, // Enable logging
LogLevel, // Set log level
false, // clipboardAttribution
TEXT(""), // facebookAppId
TEXT("") // customSdid
);
facebookAppId
ID do aplicativo do Facebook
Defina sua ID de aplicativo do Facebook para habilitar a integração de atribuição do Facebook.
Assinatura
FString facebookAppId
// Default: TEXT("")
Exemplo de utilização
// Set Facebook App ID for attribution
FString FacebookAppId = TEXT("123456789012345");
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
60, // sessionTimeout
TEXT(""), // customUserId
true, // skAdNetworkEnabled
false, // manualSkanConversionManagement
0, // waitForTrackingAuthorizationWithTimeoutInterval
false, // oaidCollection
false, // enableLogging
0, // logLevel
false, // clipboardAttribution
FacebookAppId, // Facebook App ID
TEXT("") // customSdid
);
logLevel
Nível de registo
Define o nível de verbosidade para o registo SDK. Os valores mais elevados fornecem registos mais detalhados. Intervalo válido: 0-5.
Assinatura
int logLevel
// Default: 0
// Valid range: 0 (minimal) to 5 (verbose)
Exemplo de utilização
// Set verbose logging for debugging
int LogLevel = 5;
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
60, // sessionTimeout
TEXT(""), // customUserId
true, // skAdNetworkEnabled
false, // manualSkanConversionManagement
0, // waitForTrackingAuthorizationWithTimeoutInterval
false, // oaidCollection
true, // enableLogging
LogLevel, // Set log level to verbose
false, // clipboardAttribution
TEXT(""), // facebookAppId
TEXT("") // customSdid
);
manualSkanConversionManagement
Gestão manual de conversões SKAdNetwork
Ativar o controlo manual das actualizações dos valores de conversão da SKAdNetwork em vez da gestão automática (apenas iOS).
Assinatura
bool manualSkanConversionManagement
// Default: false
Exemplo de utilização
// Enable manual SKAN conversion management
bool ManualSkanManagement = true;
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
60, // sessionTimeout
TEXT(""), // customUserId
true, // skAdNetworkEnabled
ManualSkanManagement, // Enable manual SKAN management
0, // waitForTrackingAuthorizationWithTimeoutInterval
false, // oaidCollection
false, // enableLogging
0, // logLevel
false, // clipboardAttribution
TEXT(""), // facebookAppId
TEXT("") // customSdid
);
// Later, manually update conversion value
USingularSDKBPLibrary::SkanUpdateConversionValue(15);
oaidCollection
Coleção de OAID
Ativar a recolha de Open Anonymous Identifier (OAID) para dispositivos Android na China (apenas Android).
Assinatura
bool oaidCollection
// Default: false
Exemplo de utilização
// Enable OAID collection for Chinese Android devices
bool OaidCollection = true;
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
60, // sessionTimeout
TEXT(""), // customUserId
true, // skAdNetworkEnabled
false, // manualSkanConversionManagement
0, // waitForTrackingAuthorizationWithTimeoutInterval
OaidCollection, // Enable OAID collection
false, // enableLogging
0, // logLevel
false, // clipboardAttribution
TEXT(""), // facebookAppId
TEXT("") // customSdid
);
sessionTimeout
Tempo limite da sessão
Define o tempo limite da sessão em segundos. Após este período de inatividade, é iniciada uma nova sessão quando o utilizador regressa.
Assinatura
int sessionTimeout
// Default: 60 (seconds)
Exemplo de utilização
// Set session timeout to 5 minutes
int SessionTimeout = 300; // 5 minutes in seconds
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
SessionTimeout, // 5 minute session timeout
TEXT(""), // customUserId
true, // skAdNetworkEnabled
false, // manualSkanConversionManagement
0, // waitForTrackingAuthorizationWithTimeoutInterval
false, // oaidCollection
false, // enableLogging
0, // logLevel
false, // clipboardAttribution
TEXT(""), // facebookAppId
TEXT("") // customSdid
);
skAdNetworkEnabled
SKAdNetwork activada
Ativar o suporte de SKAdNetwork para rastreio de atribuição iOS através da estrutura de preservação de privacidade da Apple (apenas iOS).
Assinatura
bool skAdNetworkEnabled
// Default: true
Exemplo de utilização
// Enable SKAdNetwork for iOS attribution
bool SkAdNetworkEnabled = true;
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
60, // sessionTimeout
TEXT(""), // customUserId
SkAdNetworkEnabled, // Enable SKAdNetwork
false, // manualSkanConversionManagement
0, // waitForTrackingAuthorizationWithTimeoutInterval
false, // oaidCollection
false, // enableLogging
0, // logLevel
false, // clipboardAttribution
TEXT(""), // facebookAppId
TEXT("") // customSdid
);
waitForTrackingAuthorizationWithTimeoutInterval
Aguardar autorização de rastreamento com intervalo de tempo limite
Defina um tempo limite em segundos para aguardar que o utilizador responda à solicitação ATT (App Tracking Transparency) antes de inicializar o SDK (apenas iOS 14+).
Assinatura
int waitForTrackingAuthorizationWithTimeoutInterval
// Default: 0 (no waiting)
// Recommended: 60-300 seconds
Exemplo de uso
// Wait up to 5 minutes for ATT authorization
int WaitTimeout = 300; // 5 minutes
USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
60, // sessionTimeout
TEXT(""), // customUserId
true, // skAdNetworkEnabled
false, // manualSkanConversionManagement
WaitTimeout, // Wait for ATT authorization
false, // oaidCollection
false, // enableLogging
0, // logLevel
false, // clipboardAttribution
TEXT(""), // facebookAppId
TEXT("") // customSdid
);
Exemplo de configuração completa
Configuração completa do SDK
Exemplo que mostra uma inicialização completa do SDK com todas as opções de configuração definidas.
// Complete configuration example
FString ApiKey = TEXT("SDK KEY");
FString ApiSecret = TEXT("SDK SECRET");
int SessionTimeout = 60;
FString CustomUserId = TEXT("user_12345");
bool SkAdNetworkEnabled = true;
bool ManualSkanConversionManagement = false;
int WaitForTrackingAuthorizationTimeout = 300;
bool OaidCollection = false;
bool EnableLogging = true;
int LogLevel = 3;
bool ClipboardAttribution = true;
FString FacebookAppId = TEXT("123456789012345");
FString CustomSdid = TEXT("");
bool Success = USingularSDKBPLibrary::Initialize(
ApiKey,
ApiSecret,
SessionTimeout,
CustomUserId,
SkAdNetworkEnabled,
ManualSkanConversionManagement,
WaitForTrackingAuthorizationTimeout,
OaidCollection,
EnableLogging,
LogLevel,
ClipboardAttribution,
FacebookAppId,
CustomSdid
);
if (Success)
{
UE_LOG(LogTemp, Log, TEXT("Singular SDK initialized with full configuration"));
}
else
{
UE_LOG(LogTemp, Error, TEXT("Failed to initialize Singular SDK"));
}