SDK do React Native - Referência de Métodos
Esta referência abrangente documenta todos os métodos disponíveis no SDK Singular para aplicativos React Native. O SDK fornece funcionalidade para inicialização, rastreamento de eventos, relatórios de receita, atribuição, conformidade com a privacidade de dados e configuração. Cada método é apresentado com uma descrição, assinatura e exemplos práticos de uso para ajudar os desenvolvedores a integrar os recursos do SDK da Singular em seus aplicativos React Native.
adRevenue
Método Singular.adRevenue
Rastreia eventos de receita de anúncios com informações detalhadas de dados de anúncios. Esse método permite relatar a receita gerada pelos anúncios exibidos em seu aplicativo com vários parâmetros para categorizar e analisar o desempenho do anúncio.
Assinatura
static adRevenue(adData: {
ad_platform: string;
ad_currency: string;
ad_revenue: number;
[key: string]: any;
}): void
Propriedades obrigatórias
-
ad_platform(string): A plataforma de publicidade a partir da qual a receita de anúncios é gerada (por exemplo, "AdMob", "Facebook", "UnityAds"). -
ad_currency(string): O código da moeda (formato ISO 4217) em que as receitas de publicidade são comunicadas (por exemplo, "USD", "EUR"). -
ad_revenue(número): O valor da receita gerada pela impressão do anúncio.
Propriedades opcionais
-
ad_unit_id(string): O identificador exclusivo do bloco de anúncios em que o anúncio foi exibido. -
ad_type(string): O tipo ou formato do anúncio (por exemplo, "Recompensado", "Intersticial", "Banner"). -
ad_placement_name(string): O nome ou identificador de localização do local onde o anúncio foi colocado na sua aplicação (por exemplo, "level_complete", "main_menu"). -
ad_mediation_platform(string): A plataforma de mediação de anúncios utilizada para apresentar o anúncio (por exemplo, "admob", "ironsource", "max"). -
ad_impression_id(string): Um identificador único para o evento específico de impressão do anúncio. -
ad_group_type(string): A classificação de tipo ou categoria do grupo de anúncios. -
ad_unit_name(string): O nome legível por humanos atribuído ao bloco de anúncios. -
ad_group_id(string): O identificador único do grupo de anúncios associado a esta impressão. -
ad_group_name(string): O nome legível por humanos do grupo de anúncios. -
ad_group_priority(número): O nível de prioridade numérica atribuído ao grupo de anúncios para a ordenação em cascata da mediação. -
ad_precision(string): O nível de precisão ou exatidão dos dados de receitas de anúncios (por exemplo, "estimated", "precise", "publisher_defined"). -
ad_placement_id(string): O identificador exclusivo do local de colocação do anúncio na sua aplicação.
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
const adData = {
ad_platform: 'AdMob',
ad_currency: 'USD',
ad_revenue: 0.05,
ad_unit_id: 'ca-app-pub-1234567890123456',
ad_type: 'Rewarded',
ad_placement_name: 'level_complete'
};
NativeSingular.adRevenue(adData);
import { Singular } from 'singular-react-native';
// Track ad revenue event
const adData = {
ad_platform: 'AdMob',
ad_currency: 'USD',
ad_revenue: 0.05,
ad_unit_id: 'ca-app-pub-1234567890123456',
ad_type: 'Rewarded',
ad_placement_name: 'level_complete'
};
Singular.adRevenue(adData);
clearGlobalProperties
Método Singular.clearGlobalProperties
Remove todas as propriedades globais definidas anteriormente. Isto é útil quando é necessário repor as propriedades globais, por exemplo, quando um utilizador termina a sessão na sua aplicação.
Assinatura
static clearGlobalProperties(): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Clear all global properties
NativeSingular.clearGlobalProperties();
import { Singular } from 'singular-react-native';
// Clear all global properties
Singular.clearGlobalProperties();
createReferrerShortLink
Método Singular.createReferrerShortLink
Cria um link curto com informações do referenciador que podem ser usadas para compartilhamento e atribuição. Este método gera links rastreáveis que podem ser partilhados com os utilizadores, permitindo-lhe atribuir instalações e actividades a fontes de referência específicas.
Assinatura
static createReferrerShortLink(
baseLink: string,
referrerName: string,
referrerId: string,
passthroughParams: Record<string, any>,
completionHandler: (data: string | null, error?: string) => void
): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Create a short link for referral
NativeSingular.createReferrerShortLink(
'https://sample.sng.link/B4tbmv8fp',
'John Doe',
'aq239897',
{ channel: 'sms', campaign: 'summer_promo' },
(result: string, error: string) => {
if (error) {
console.error('Short link creation failed:', error);
} else {
console.log('Short link created successfully:', result);
}
}
);
import { Singular } from 'singular-react-native';
// Create a short link for referral
Singular.createReferrerShortLink(
'https://sample.sng.link/B4tbmv8fp',
'John Doe',
'aq239897',
{ channel: 'sms', campaign: 'summer_promo' },
(link, error) => {
if (error) {
console.error('Error creating short link:', error);
} else if (link) {
console.log('Generated short link:', link);
// Share the link with users
}
}
);
customRevenue
Método Singular.customRevenue
Rastreia eventos de receita personalizados com um nome de evento, moeda e valor especificados. Isto permite um controlo de receitas mais específico com nomes de eventos personalizados.
Assinatura
static customRevenue(
eventName: string,
currency: string,
amount: number
): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Track a custom revenue event
NativeSingular.customRevenue('premium_subscription', 'USD', 9.99);
import { Singular } from 'singular-react-native';
// Track a custom revenue event
Singular.customRevenue('premium_subscription', 'USD', 9.99);
customRevenueWithArgs
Método Singular.customRevenueWithArgs
Rastreia eventos de receitas personalizados com um nome de evento, moeda, montante e atributos adicionais especificados. Isto permite um controlo mais detalhado das receitas com parâmetros personalizados.
Assinatura
static customRevenueWithArgs(
eventName: string,
currency: string,
amount: number,
args: Record<string, any>
): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Track a custom revenue event with attributes
NativeSingular.customRevenueWithArgs(
'in_app_purchase',
'USD',
5.99,
{
product_id: 'com.app.gems_pack_small',
quantity: 1
}
);
import { Singular } from 'singular-react-native';
// Track a custom revenue event with attributes
Singular.customRevenueWithArgs(
'in_app_purchase',
'USD',
5.99,
{
product_id: 'com.app.gems_pack_small',
quantity: 1
}
);
evento
Método Singular.event
Rastreia eventos com o nome especificado. Utilize este método para seguir as acções e o envolvimento do utilizador na sua aplicação.
Assinatura
static event(eventName: string): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Track a simple event
NativeSingular.event('level_completed');
import { Singular } from 'singular-react-native';
// Track a simple event
Singular.event('level_completed');
eventWithArgs
Método Singular.eventWithArgs
Utilize este método para acompanhar as acções do utilizador com parâmetros detalhados.
Assinatura
static eventWithArgs(
eventName: string,
args: Record<string, any>
): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Track an event with additional parameters
NativeSingular.eventWithArgs('level_completed', {
level_id: 5,
score: 12500,
time_spent: 120,
difficulty: 'medium'
});
import { Singular } from 'singular-react-native';
// Track an event with additional parameters
Singular.eventWithArgs('level_completed', {
level_id: 5,
score: 12500,
time_spent: 120,
difficulty: 'medium'
});
getGlobalProperties
Método Singular.getGlobalProperties
Recupera todas as propriedades globais atualmente definidas. Este método devolve uma promessa que resolve para um objeto que contém todas as propriedades globais que foram definidas para o SDK.
Assinatura
static getGlobalProperties(): Promise<Record<string, any>>
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Get all global properties
NativeSingular.getGlobalProperties();
import { Singular } from 'singular-react-native';
// Get all global properties
Singular.getGlobalProperties();
getLimitDataSharing
Método Singular.getLimitDataSharing
Recupera o estado atual da limitação da partilha de dados. Este método devolve uma promessa que resolve para um booleano que indica se a partilha de dados está atualmente limitada.
Assinatura
static getLimitDataSharing(): Promise<boolean>
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Check if data sharing is limited
NativeSingular.getLimitDataSharing();
import { Singular } from 'singular-react-native';
// Check if data sharing is limited
Singular.getLimitDataSharing();
handlePushNotification
Método Singular.handlePushNotification
Processa uma carga útil de notificação push para atribuição. Este método deve ser chamado quando seu aplicativo recebe uma notificação push para permitir que o Singular a atribua corretamente. Este método é apenas para iOS.
Assinatura
static handlePushNotification(
pushNotificationPayload: Record<string, any>
): void
Exemplo de uso
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
import { Platform } from 'react-native';
// Handle a received push notification (iOS only)
if (Platform.OS === 'ios') {
const userInfo = remoteMessage.data;
NativeSingular.handlePushNotification(userInfo);
}
import { Singular } from 'singular-react-native';
import { Platform } from 'react-native';
// Handle a received push notification (iOS only)
if (Platform.OS === 'ios') {
const userInfo = remoteMessage.data;
Singular.handlePushNotification(userInfo);
}
inAppPurchase
Método Singular.inAppPurchase
Relata a receita para o Singular e executa a validação do recibo (se habilitado) no backend. O objeto de compra deve ser do tipo SingularIOSPurchase ou SingularAndroidPurchase.
Assinatura
static inAppPurchase(
eventName: string,
purchase: SingularIOSPurchase | SingularAndroidPurchase
): void
Construtores da classe SingularIOSPurchase Purchase
constructor(
revenue: number,
currency: string,
productId: string,
transactionId: string,
receipt: string
)
Construtores da classe de compra SingularAndroidPurchase
constructor(
revenue: number,
currency: string,
receipt: string,
signature: string
)
Exemplo de uso
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
import { SingularIOSPurchase, SingularAndroidPurchase } from 'singular-react-native';
import { Platform } from 'react-native';
// iOS Example
if (Platform.OS === 'ios') {
const iosPurchase = new SingularIOSPurchase(
99.99, // revenue
'USD', // currency
'premium_bundle', // productId
'trans_12345', // transactionId
'base64receipt...' // receipt
);
// Convert to plain object for TurboModule
NativeSingular.inAppPurchase('purchase', iosPurchase.toSpecObject());
}
// Android Example
if (Platform.OS === 'android') {
const androidPurchase = new SingularAndroidPurchase(
99.99, // revenue
'USD', // currency
'purchaseDataJSON', // receipt
'signatureString' // signature
);
// Convert to plain object for TurboModule
NativeSingular.inAppPurchase('purchase', androidPurchase.toSpecObject());
}
import { Singular, SingularIOSPurchase, SingularAndroidPurchase } from 'singular-react-native';
import { Platform } from 'react-native';
// iOS Example
if (Platform.OS === 'ios') {
const iosPurchase = new SingularIOSPurchase(
99.99, // revenue
'USD', // currency
'premium_bundle', // productId
'trans_12345', // transactionId
'base64receipt...' // receipt
);
Singular.inAppPurchase('purchase', iosPurchase);
}
// Android Example
if (Platform.OS === 'android') {
const androidPurchase = new SingularAndroidPurchase(
99.99, // revenue
'USD', // currency
'purchaseDataJSON', // receipt
'signatureString' // signature
);
Singular.inAppPurchase('purchase', androidPurchase);
}
inAppPurchaseWithArgs
Método Singular.inAppPurchaseWithArgs
Informa a receita para o Singular com atributos adicionais e realiza a validação do recibo (se habilitado) no backend. O objeto de compra deve ser do tipo SingularIOSPurchase ou SingularAndroidPurchase.
Assinatura
static inAppPurchaseWithArgs(
eventName: string,
purchase: SingularIOSPurchase | SingularAndroidPurchase,
args: Record<string, any>
): void
Construtores da classe SingularIOSPurchase Purchase
constructor(
revenue: number,
currency: string,
productId: string,
transactionId: string,
receipt: string
)
Construtores da classe de compra SingularAndroidPurchase
constructor(
revenue: number,
currency: string,
receipt: string,
signature: string
)
Exemplo de uso
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
import { SingularIOSPurchase, SingularAndroidPurchase } from 'singular-react-native';
import { Platform } from 'react-native';
// iOS Example - Track IAP with additional attributes
if (Platform.OS === 'ios') {
const iosPurchase = new SingularIOSPurchase(
99.99, // revenue
'USD', // currency
'premium_bundle', // productId
'trans_12345', // transactionId
'base64receipt...' // receipt
);
// Convert to plain object for TurboModule
NativeSingular.inAppPurchaseWithArgs(
'purchase',
iosPurchase.toSpecObject(),
{
product_category: 'premium_content',
is_first_purchase: true,
user_tier: 'gold'
}
);
}
// Android Example - Track IAP with additional attributes
if (Platform.OS === 'android') {
const androidPurchase = new SingularAndroidPurchase(
99.99, // revenue
'USD', // currency
'purchaseDataJSON', // receipt
'signatureString' // signature
);
// Convert to plain object for TurboModule
NativeSingular.inAppPurchaseWithArgs(
'purchase',
androidPurchase.toSpecObject(),
{
product_category: 'premium_content',
is_first_purchase: true,
user_tier: 'gold'
}
);
}
import { Singular, SingularIOSPurchase, SingularAndroidPurchase } from 'singular-react-native';
import { Platform } from 'react-native';
// iOS Example - Track IAP with additional attributes
if (Platform.OS === 'ios') {
const iosPurchase = new SingularIOSPurchase(
99.99, // revenue
'USD', // currency
'premium_bundle', // productId
'trans_12345', // transactionId
'base64receipt...' // receipt
);
Singular.inAppPurchaseWithArgs('purchase', iosPurchase, {
product_category: 'premium_content',
is_first_purchase: true,
user_tier: 'gold'
});
}
// Android Example - Track IAP with additional attributes
if (Platform.OS === 'android') {
const androidPurchase = new SingularAndroidPurchase(
99.99, // revenue
'USD', // currency
'purchaseDataJSON', // receipt
'signatureString' // signature
);
Singular.inAppPurchaseWithArgs('purchase', androidPurchase, {
product_category: 'premium_content',
is_first_purchase: true,
user_tier: 'gold'
});
}
init
Método Singular.init
Inicializa o Singular SDK com a configuração fornecida. Este é o primeiro método que deve ser chamado para começar a usar o Singular SDK.
Assinatura
static init(singularConfig: SingularConfig): void
Exemplo de uso
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Create configuration object
const config: SingularConfig = {
apikey: 'YOUR_API_KEY',
secret: 'YOUR_SECRET',
customUserId: 'user-123456',
sessionTimeout: 60,
enableLogging: true,
logLevel: 3,
}
// Initialize the SDK
NativeSingular.init(config);
import { Singular, SingularConfig } from 'singular-react-native';
// Create configuration object
const config = new SingularConfig('YOUR_API_KEY', 'YOUR_SECRET');
// Configure additional options if needed
config.customUserId = 'user-123456';
config.sessionTimeout = 60;
config.enableLogging = true;
config.logLevel = 3;
// Initialize the SDK
Singular.init(config);
isAllTrackingStopped
Método Singular.isAllTrackingStopped
Verifica se todo o rastreamento está parado no momento. Este método devolve uma promessa que resolve para um booleano indicando se o rastreio está atualmente parado.
Assinatura
static isAllTrackingStopped(): Promise<boolean>
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Check if tracking is stopped
NativeSingular.isAllTrackingStopped();
import { Singular } from 'singular-react-native';
// Check if tracking is stopped
Singular.isAllTrackingStopped();
limitDataSharing
Método Singular.limitDataSharing
Define o estado de limitação da partilha de dados. Utilize este método para limitar a partilha de dados com base no consentimento do utilizador ou em requisitos de privacidade.
Assinatura
static limitDataSharing(limitDataSharingValue: boolean): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// To limit data sharing (e.g., when user opts out)
NativeSingular.limitDataSharing(true);
// To enable full data sharing (e.g., when user opts in)
NativeSingular.limitDataSharing(false);
import { Singular } from 'singular-react-native';
// To limit data sharing (e.g., when user opts out)
Singular.limitDataSharing(true);
// To enable full data sharing (e.g., when user opts in)
Singular.limitDataSharing(false);
resumeAllTracking
Método Singular.resumeAllTracking
Retoma todas as actividades de seguimento que foram anteriormente interrompidas. Utilize este método para reativar o seguimento depois de este ter sido interrompido.
Assinatura
static resumeAllTracking(): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Resume tracking when user opts back in
NativeSingular.resumeAllTracking();
import { Singular } from 'singular-react-native';
// Resume tracking when user opts back in
Singular.resumeAllTracking();
revenue
Método Singular.revenue
Rastreia eventos de receitas com moeda e montante. Isto permite um controlo básico das receitas para a sua aplicação.
Assinatura
static revenue(currency: string, amount: number): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Track revenue with currency and amount
NativeSingular.revenue('USD', 9.99);
import { Singular } from 'singular-react-native';
// Track revenue with currency and amount
Singular.revenue('USD', 9.99);
revenueWithArgs
Método Singular.revenueWithArgs
Rastreia eventos de receitas com moeda, montante e atributos adicionais, o que permite um rastreio abrangente das receitas com parâmetros personalizados.
Assinatura
static revenueWithArgs(
currency: string,
amount: number,
args: Record<string, any>
): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Track revenue with additional attributes
NativeSingular.revenueWithArgs('USD', 19.98, {
product_id: 'premium_gems',
quantity: 2
});
import { Singular } from 'singular-react-native';
// Track revenue with additional attributes
Singular.revenueWithArgs('USD', 19.98, {
product_id: 'premium_gems',
quantity: 2
});
setCustomUserId
Método Singular.setCustomUserId
Define um ID de usuário personalizado para o usuário atual. Isto permite-lhe associar os dados Singular ao seu próprio sistema de identificação de utilizadores.
Assinatura
static setCustomUserId(customUserId: string): void
Exemplo de uso
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Set custom user ID after user logs in
NativeSingular.setCustomUserId('user123456');
import { Singular } from 'singular-react-native';
// Set custom user ID after user logs in
Singular.setCustomUserId('user123456');
setDeviceCustomUserId
Recurso empresarial - Entre em contato com o gerente de sucesso do cliente para habilitar esse recurso para sua conta.
Método Singular.setDeviceCustomUserId
Define um ID de usuário personalizado no nível do dispositivo. Isto permite-lhe associar os dados Singular ao seu próprio sistema de identificação de utilizadores ao nível do dispositivo.
Assinatura
static setDeviceCustomUserId(customUserId: string): void
Exemplo de uso
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Set device-level custom user ID
NativeSingular.setDeviceCustomUserId('device_user_123456');
import { Singular } from 'singular-react-native';
// Set device-level custom user ID
Singular.setDeviceCustomUserId('device_user_123456');
setGlobalProperty
Método Singular.setGlobalProperty
Define uma propriedade global que será enviada com todos os eventos. Isto permite-lhe adicionar atributos consistentes a todos os eventos sem os especificar de cada vez.
Assinatura
static setGlobalProperty(
key: string,
value: string,
overrideExisting: boolean
): Promise<boolean>
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Set a global property
NativeSingular.setGlobalProperty(
'user_tier',
'premium',
true
);
import { Singular } from 'singular-react-native';
// Set a global property
Singular.setGlobalProperty(
'user_tier',
'premium',
true
);
setLimitAdvertisingIdentifiers
Método Singular.setLimitAdvertisingIdentifiers
Ativa ou desactiva o modo de identificadores de publicidade limitados. Esta opção afecta a forma como o SDK recolhe e utiliza identificadores de dispositivos para rastreio.
Assinatura
static setLimitAdvertisingIdentifiers(enabled: boolean): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Enable limited identifiers mode
NativeSingular.setLimitAdvertisingIdentifiers(true);
// Disable limited identifiers mode
NativeSingular.setLimitAdvertisingIdentifiers(false);
import { Singular } from 'singular-react-native';
// Enable limited identifiers mode
Singular.setLimitAdvertisingIdentifiers(true);
// Disable limited identifiers mode
Singular.setLimitAdvertisingIdentifiers(false);
setUninstallToken
Método Singular.setUninstallToken
Regista o token de notificação push para rastreio de desinstalação. Este método deve ser chamado com o token de notificação push para ativar o rastreio de desinstalação.
Assinatura
static setUninstallToken(token: string): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
import messaging from '@react-native-firebase/messaging';
// Register device token for uninstall tracking
NativeSingular.setUninstallToken(token);
import { Singular } from 'singular-react-native';
import messaging from '@react-native-firebase/messaging';
// Register device token for uninstall tracking
Singular.setUninstallToken(token);
skanGetConversionValue
Método Singular.skanGetConversionValue
Recupera o valor de conversão atual de SKAdNetwork. Este método devolve uma promessa que resolve o valor de conversão atual utilizado para a atribuição de SKAdNetwork. Este método é exclusivo do iOS.
Assinatura
static skanGetConversionValue(): Promise<number | null>
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
import { Platform } from 'react-native';
// Get the current SKAdNetwork conversion value (iOS only)
if (Platform.OS === 'ios') {
const conversionValue = await NativeSingular.skanGetConversionValue();
console.log('Current conversion value:', conversionValue ?? 0);
}
import { Singular } from 'singular-react-native';
import { Platform } from 'react-native';
// Get the current SKAdNetwork conversion value (iOS only)
if (Platform.OS === 'ios') {
const conversionValue = await Singular.skanGetConversionValue();
console.log('Current conversion value:', conversionValue ?? 0);
}
skanRegisterAppForAdNetworkAttribution
Método Singular.skanRegisterAppForAdNetworkAttribution
Regista a aplicação para atribuição de SKAdNetwork. Este método deve ser chamado para ativar a atribuição de SKAdNetwork no iOS. Este método é exclusivo do iOS.
Assinatura
static skanRegisterAppForAdNetworkAttribution(): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
import { Platform } from 'react-native';
// Register for SKAdNetwork attribution (iOS only)
if (Platform.OS === 'ios') {
NativeSingular.skanRegisterAppForAdNetworkAttribution();
}
import { Singular } from 'singular-react-native';
import { Platform } from 'react-native';
// Register for SKAdNetwork attribution (iOS only)
if (Platform.OS === 'ios') {
Singular.skanRegisterAppForAdNetworkAttribution();
}
skanUpdateConversionValue
Método Singular.skanUpdateConversionValue
Actualiza o valor de conversão SKAdNetwork. Este método permite-lhe atualizar manualmente o valor de conversão utilizado para a atribuição de SKAdNetwork. Este método é exclusivo do iOS.
Assinatura
static skanUpdateConversionValue(conversionValue: number): Promise<boolean>
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
import { Platform } from 'react-native';
// Update the SKAdNetwork conversion value (iOS only)
if (Platform.OS === 'ios') {
const success = await NativeSingular.skanUpdateConversionValue(5);
if (success) {
console.log('Conversion value updated successfully');
}
}
import { Singular } from 'singular-react-native';
import { Platform } from 'react-native';
// Update the SKAdNetwork conversion value (iOS only)
if (Platform.OS === 'ios') {
const success: boolean = await Singular.skanUpdateConversionValue(5);
if (success) {
console.log('Conversion value updated successfully');
}
}
skanUpdateConversionValues
Método Singular.skanUpdateConversionValues
Actualiza os valores de conversão da SKAdNetwork 4.0 com o valor fino, o valor grosso e os parâmetros de bloqueio. Este método destina-se ao iOS 16.1+ e é exclusivo do iOS.
Assinatura
static skanUpdateConversionValues(
conversionValue: number,
coarse: number,
lock: boolean
): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
import { Platform } from 'react-native';
// Update SKAdNetwork 4.0 conversion values (iOS 16.1+)
if (Platform.OS === 'ios') {
NativeSingular.skanUpdateConversionValues(
5, // fine value (0-63)
1, // coarse value (0=low, 1=medium, 2=high)
false // lock
);
}
import { Singular } from 'singular-react-native';
import { Platform } from 'react-native';
// Update SKAdNetwork 4.0 conversion values (iOS 16.1+)
if (Platform.OS === 'ios') {
Singular.skanUpdateConversionValues(
5, // fine value (0-63)
1, // coarse value (0=low, 1=medium, 2=high)
false // lock
);
}
stopAllTracking
Método Singular.stopAllTracking
Interrompe todas as actividades de rastreio. Utilize este método para desativar o rastreio quando os utilizadores optam por não o fazer ou para garantir a conformidade com a privacidade.
Assinatura
static stopAllTracking(): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Stop tracking when user opts out
NativeSingular.stopAllTracking();
import { Singular } from 'singular-react-native';
// Stop tracking when user opts out
Singular.stopAllTracking();
trackingOptIn
Método Singular.trackingOptIn
Indica que o utilizador optou por aceitar o rastreio. Chame este método quando o utilizador consentir explicitamente no rastreio e na recolha de dados.
Assinatura
static trackingOptIn(): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// User has opted in to tracking
NativeSingular.trackingOptIn();
import { Singular } from 'singular-react-native';
// User has opted in to tracking
Singular.trackingOptIn();
trackingUnder13
Método Singular.trackingUnder13
Indica que o utilizador tem menos de 13 anos de idade. Chame este método para cumprir a COPPA e outros regulamentos para utilizadores com menos de 13 anos.
Assinatura
static trackingUnder13(): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Notify Singular the user is under 13 years old
NativeSingular.trackingUnder13();
import { Singular } from 'singular-react-native';
// Notify Singular the user is under 13 years old
Singular.trackingUnder13();
unsetCustomUserId
Método Singular.unsetCustomUserId
Remove o ID de utilizador personalizado definido anteriormente. Chame este método quando o utilizador terminar a sessão ou quando já não pretender associar eventos ao ID de utilizador atual.
Assinatura
static unsetCustomUserId(): void
Exemplo de utilização
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Clear custom user ID when user logs out
NativeSingular.unsetCustomUserId();
import { Singular } from 'singular-react-native';
// Clear custom user ID when user logs out
Singular.unsetCustomUserId();
unsetGlobalProperty
Método Singular.unsetGlobalProperty
Remove uma propriedade global previamente definida. Chame este método quando já não quiser que uma propriedade global específica seja enviada com eventos.
Assinatura
static unsetGlobalProperty(key: string): void
Exemplo de uso
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';
// Remove a global property
NativeSingular.unsetGlobalProperty('user_tier');
import { Singular } from 'singular-react-native';
// Remove a global property
Singular.unsetGlobalProperty('user_tier');