Real User Monitoring (RUM) fornece monitoramento abrangente para aplicativos móveis, permitindo que você monitore e analise métricas principais, como desempenho do aplicativo, travamentos e congelamentos. Siga este guia para integrar um aplicativo iOS.
Notas sobre atualização
Os parâmetros de integração do SDK foram alterados na versão 2.0.0 e não são compatíveis com versões anteriores. Se você atualizar para a versão 2.0.0 ou posterior, siga a documentação de integração mais recente para garantir que o SDK seja inicializado corretamente.
Etapa 1: integrar um SDK
CocoaPods (recommended)
-
Adicione a versão mais recente do SDK ao Podfile do seu projeto Xcode.
source 'https://github.com/CocoaPods/Specs.git' target 'iOSDemo' do # Comment the next line if you're not using Swift and don't want to use dynamic frameworks use_frameworks! # Import the Alibaba Cloud RUM SDK pod 'AlibabaCloudRUM', '2.4.3' end -
No diretório raiz do seu projeto, ou no diretório onde o Podfile está localizado, execute o seguinte comando para atualizar o ambiente do CocoaPods.
pod install --repo-update
Manual integration
-
Baixe o SDK e extraia o arquivo .zip.
O arquivo .zip extraído contém o seguinte:
AlibabaCloudRUM.xcframework
AlibabaCloudRUMSDK.xcframework
-
Configure o projeto.
-
No Xcode, escolha . No painel, selecione os dois pacotes de framework da etapa anterior e clique em Add.
NotaA interface do usuário pode variar ligeiramente dependendo da sua versão do Xcode.
Recomendamos que você selecione Copy files to destination.
Na seção Targets, selecione o target do seu projeto, como iOSDemo, e clique em Finish.
-
Nas configurações do seu projeto, navegue até target > Build Phases > Link Binary With Libraries e adicione as seguintes bibliotecas de dependência:
libc++.tbd (Required)
libresolv.tbd (Required)
No seu projeto Xcode, navegue até Build Phases > Link Binary With Libraries e confirme se as bibliotecas de sistema mencionadas, o AlibabaCloudRUMSDK.xcframework e o AlibabaCloudRUM.xcframework foram adicionados. Certifique-se de que o Status de cada um esteja definido como Required.
-
Em target > Build Settings, pesquise por Other Linker Flags e adicione o flag de linker
-ObjC.ImportanteCertifique-se de que
-ObjCesteja escrito corretamente.
-
Etapa 2: importar um arquivo de cabeçalho
No arquivo main.m ou AppDelegate.m, importe o arquivo de cabeçalho.
Objective-C
@import AlibabaCloudRUM;
Swift
import AlibabaCloudRUM
Etapa 3: inicializar o SDK
Inicialize o SDK na função main ou no método - application:didFinishLaunchingWithOptions:.
Objective-C
// [Recommended] Enable the Session Replay module.
[AlibabaCloudRUM enableModule:AlibabaCloudModuleSessionReplay];
// [Required] Obtain the endpoint when you create a RUM application.
[AlibabaCloudRUM setEndpoint:@"<your endpoint>"];
// [Required] Obtain the workspace when you create a RUM application.
[AlibabaCloudRUM setWorkspace:@"<your workspace>"];
// [Required] Obtain the serviceId when you create a RUM application.
[AlibabaCloudRUM start:@"<your serviceId>"];
// [Recommended] Configure Session Replay. The configuration includes:
// 1. A sample rate of 5%
// 2. Preservation of static text, placeholder text, and normal input
// 3. Preservation of built-in resource images
// 4. Recording of touch positions
AlibabaCloudSessionReplayConfiguration *sessionReplayConfiguration =
[AlibabaCloudSessionReplayConfiguration configurationWithSampleRate:5
textAndInputPrivacy:AlibabaCloudTextAndInputPrivacyMaskSensitiveInputs
imagePrivacy:AlibabaCloudImagePrivacyMaskNonBundledOnly
touchPrivacy:AlibabaCloudTouchPrivacyShow];
// [Recommended] Start Session Replay data collection.
[AlibabaCloudSessionReplay startWithConfiguration:sessionReplayConfiguration];
Swift
// [Recommended] Enable the session replay module.
AlibabaCloudRUM.enableModule(.sessionReplay)
// [Required] Obtain the endpoint when you create a RUM application.
AlibabaCloudRUM.setEndpoint("<your endpoint>")
// [Required] Obtain the workspace when you create a RUM application.
AlibabaCloudRUM.setWorkspace:("<your workspace>")
// [Required] Obtain the serviceId when you create a RUM application.
AlibabaCloudRUM.start("<your serviceId>")
// [Recommended] Configure Session Replay with the following settings:
// 1. Sample rate: 5%
// 2. Retain static text, placeholder text, and regular input.
// 3. Retain built-in resource images.
// 4. Record touch positions.
let configuration = AlibabaCloudSessionReplayConfiguration(sampleRate: 5,
textAndInputPrivacy: .maskSensitiveInputs,
imagePrivacy: .maskNonBundledOnly,
touchPrivacy: .show)
// [Recommended] Start Session Replay data collection.
AlibabaCloudSessionReplay.start(configuration)
Etapa 4: verificar a integração
Após executar o aplicativo, verifique a saída do console. Se o console exibir "AlibabaCloudRUMSDK init success", o SDK foi inicializado com sucesso. Exemplo:
[AlibabaCloudRUM] [INFO ] [RUM] <start> AlibabaCloud RUM init success