SDK do React Native - Referência de métodos

Documento

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

New ArchitectureOld Architecture
// 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);

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

New ArchitectureOld Architecture
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';

// Clear all global properties
NativeSingular.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

New ArchitectureOld Architecture
// 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);
    }
  }
);

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

New ArchitectureOld Architecture
// 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);

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

New ArchitectureOld Architecture
// 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
  }
);

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

New ArchitectureOld Architecture
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';

// Track a simple event
NativeSingular.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

New ArchitectureOld Architecture
// 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'
});

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

New ArchitectureOld Architecture
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';

// Get all global properties
NativeSingular.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

New ArchitectureOld Architecture
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';

// Check if data sharing is limited
NativeSingular.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

New ArchitectureOld Architecture
// 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);
}

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

New ArchitectureOld Architecture
// 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());
}

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

New ArchitectureOld Architecture
// 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'
    }
  );
}

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

New ArchitectureOld Architecture
// 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);

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

New ArchitectureOld Architecture
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';

// Check if tracking is stopped
NativeSingular.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

New ArchitectureOld Architecture
// 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);

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

New ArchitectureOld Architecture
// 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();

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

New ArchitectureOld Architecture
// 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);

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

New ArchitectureOld Architecture
// 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
});

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

New ArchitectureOld Architecture
// 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');

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

New ArchitectureOld Architecture
// 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');

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

New ArchitectureOld Architecture
// 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
);

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

New ArchitectureOld Architecture
// 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);

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

New ArchitectureOld Architecture
// 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);

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

New ArchitectureOld Architecture
// 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);
}

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

New ArchitectureOld Architecture
// 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();
}

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

New ArchitectureOld Architecture
// 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');
  }
}

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

New ArchitectureOld Architecture
// 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
  );
}

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

New ArchitectureOld Architecture
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';

// Stop tracking when user opts out
NativeSingular.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

New ArchitectureOld Architecture
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';

// User has opted in to tracking
NativeSingular.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

New ArchitectureOld Architecture
// 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();

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

New ArchitectureOld Architecture
// 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();

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

New ArchitectureOld Architecture
// TurboModule direct API (React Native 0.76+ New Architecture)
import NativeSingular from 'singular-react-native/jsNativeSingular';

// Remove a global property
NativeSingular.unsetGlobalProperty('user_tier');