SDK do React Native - Suporte a Deep Links

Documento

Suporte de ligações diretas

As ligações diretas são URLs que direcionam os utilizadores para conteúdos específicos dentro de uma aplicação. Quando um utilizador toca numa hiperligação num dispositivo onde a aplicação já está instalada, a aplicação abre-se diretamente para a página do produto ou experiência pretendida. Os links de rastreamento singulares suportam links diretos e links diretos adiados. Para obter mais detalhes, consulte nossas Perguntas frequentes sobre links diretos e Perguntas frequentes sobre links singulares.


Requisitos


Implementação

Atualizar o AppDelegate do iOS

Pré-requisitos do iOS

Para permitir que o SDK Singular processe dados relacionados à inicialização e manipule links diretos em seu aplicativo iOS, você precisa passar os objetos launchOptions e userActivity para o SDK Singular em seu arquivo AppDelegate.m. Esses objetos, fornecidos pelo iOS, contêm informações críticas sobre como e por que seu aplicativo foi iniciado, que o Singular usa para rastreamento de atribuição e navegação de link profundo.

AppDelegate.m
// Top of the AppDelegate.m
#import <Singular-React-Native/SingularBridge.h>

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Add inside didFinishLaunchingWithOptions
    [SingularBridge startSessionWithLaunchOptions:launchOptions];
  return YES;
}

- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity
    restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler {
    [SingularBridge startSessionWithUserActivity:userActivity];
    return YES;
}

Atualizar a MainActivity do Android

Pré-requisitos do Android

Para permitir que o SDK Singular processe dados relacionados à inicialização e manipule links profundos em seu aplicativo Android, você precisa modificar o arquivo MainActivity para passar o objeto Intent para o SDK Singular. O objeto Intent, fornecido pelo sistema Android, contém informações sobre como e por que seu aplicativo foi iniciado, que o Singular usa para rastreamento de atribuição e navegação de link profundo.

MainActivity.java MainActivity.kt
// Add as part of the imports at the top of the class
import android.content.Intent;
import net.singular.react_native.SingularBridgeModule;

// Add to the MainActivity class
@Override
public void onNewIntent(Intent intent) {
  if(intent.getData() != null) {
    setIntent(intent);
    super.onNewIntent(intent);
    SingularBridgeModule.onNewIntent(intent);
  }
}

Atualizar o objeto SingularConfig

  • Adicione o retorno de chamada withSingularLink ao objeto SingularConfig durante a inicialização do SDK para manipular dados de deep link recebidos e dados de deep link adiados.

Observação: O withSingularLink é acionado somente quando o aplicativo é aberto por meio de um Singular Link. Para obter mais informações, consulte (consulte as Perguntas frequentes sobre links singulares).


Notas sobre o comportamento da chamada de retorno withSingularLink:

  • Em uma nova instalação, não há uma URL aberta quando o aplicativo é iniciado. Portanto, o Singular deve concluir a atribuição ao último ponto de contato e determinar se o link de rastreamento continha um valor configurado de Deep Link ou Deferred Deep Link (DDL). Esse processo ocorre quando o SDK da Singular envia a primeira sessão para os servidores da Singular. Se aplicável, o valor do deep link é retornado para o callback withSingularLink do SDK e apresentado no parâmetro "deeplink".

    Para testar este cenário:

    1. Desinstale a aplicação do dispositivo (se estiver atualmente instalada).
    2. Reponha o seu Google Advertising ID (GAID).
    3. Clique na ligação de seguimento Singular a partir do dispositivo. Certifique-se de que o link de rastreamento Singular está configurado com um valor de link profundo.
    4. Instale e abra a aplicação.

    Dica profissional: Ao testar links diretos ou links diretos adiados em uma versão de desenvolvimento do seu aplicativo com um nome de pacote diferente (por exemplo, com.example.dev em vez de com.example.prod), certifique-se de que o link de rastreamento esteja configurado especificamente para o nome do pacote do aplicativo de desenvolvimento, e não para o do aplicativo de produção. Além disso, depois de clicar no link de teste no seu dispositivo, instale a compilação de desenvolvimento diretamente no dispositivo de teste (por exemplo, através do Android Studio ou de um APK) em vez de transferir a aplicação de produção a partir da loja de aplicações.

    A atribuição deve ser concluída com êxito e o valor DDL será passado para o aplicativo.

  • Se um parâmetro passthrough (_p) for incluído no link de rastreamento, o parâmetro de passagem do retorno de chamada withSingularLink conterá os dados correspondentes. Isso é útil para capturar dados adicionais do clique no aplicativo.
  • Para capturar todos os parâmetros de consulta do URL do link de rastreamento, anexe o parâmetro _forward_params=2 ao link de rastreamento. Todos os parâmetros de consulta serão incluídos no parâmetro deeplink do retorno de chamada withSingularLink.
  • Se o aplicativo já estiver instalado, clicar em um Singular Link abrirá o aplicativo. A Singular usa a tecnologia Android App Links para fazer isso. O sistema operacional Android fornecerá uma URL aberta contendo todo o link de rastreamento do Singular. Durante a inicialização do SDK, o Singular SDK analisará o Android Intent, extrairá os valores de deeplink e passthrough e os retornará através do callback withSingularLink.