Integrar o SDK do iOS

Prev Next

Use o Xtremepush SDK para integrar seu aplicativo iOS com a Plataforma

  1. Para inicializar o Xtremepush, você deve modificar seu Application Delegate. Dentro da aplicação didFinishLaunchingWithOptions , adicione o seguinte código para importar o SDK XPush :

import XPush
#import <XPush/XPush.h>

  1. Dentro adicione applicationDidFinishLaunching:withOptions o seguinte, substituindo XPUSH_APP_KEY pela chave de aplicação SDK fornecida ao adicionar o aplicativo à plataforma :

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {    
    XPush.setAppKey("XPUSH_APP_KEY")
    #if DEBUG
    // Show Debug logs in debug builds
    XPush.setShouldShowDebugLogs(true)
    #endif
    XPush.applicationDidFinishLaunching(options: launchOptions)    
    return true
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    [XPush setAppKey: @"XPUSH_APP_KEY"];
    #if DEBUG
    // Show Debug logs in debug builds
    [XPush setShouldShowDebugLogs:YES]; 
    #endif 
    [XPush applicationDidFinishLaunchingWithOptions:launchOptions];
}

  1. Caso seu projeto seja provisionado em nuvem compartilhada dos EUA, adicione o seguinte código após XPush.setAppKey:

XPush.setServerURL("https://sdk.us.xtremepush.com")
[XPush setServerURL: @"https://sdk.us.xtremepush.com"];

  1. Caso seu projeto seja provisionado na Região dos EUA ou em uma nuvem privada, além de definir a URL do servidor, você também precisará implementar o Pin de Chave Pública. Para isso:

    a. Gerar um .der arquivo para a URL do servidor do cliente, por exemplo: sdk.example.xtremepush.com (entre em contato conosco para que possamos fornecer essa URL).

    b. No Terminal, execute o seguinte comando com a URL apropriada do servidor:

    1. openssl s_client -servername [https://sdk.example.xtremepush.com](https://sdk.example.xtremepush.com) -connect sdk.example.xtremepush.com:443 2>/dev/null | openssl x509 -outform der -out cert.der`

      c. Arraste e solte o cert.der arquivo que foi criado no seu projeto Xcode. Certifique-se de incluí-lo também nos Recursos do Pacote de Cópias nas Fases de Construção

    2. d. Referenciar este certificado em didFinishLaunching no AppDelegate após definir a URL do servidor:

XPush.setServerURL("https://sdk.example.xtremepush.com")
let path = Bundle.main.path(forResource: "cert", ofType: "der")
XPush.setServerExpectedCertificateFromFile(path)
[XPush setServerURL:@"https://sdk.example.xtremepush.com"];
NSString* path = [[NSBundle mainBundle] pathForResource:@"cert" ofType:@"der"];
[XPush setServerExpectedCertificateFromFile:path];

Adicionar descrição para CoreBluetooth

Como o iOS 10 NSBluetoothPeripheralUsageDescription precisa ser configurado se seu app incluir CoreBluetooth, mesmo que ele não seja usado ativamente. Como o SDK Xtremepush inclui CoreBluetooth , você deve adicionar a NSBluetoothPeripheralUsageDescription chave e a descrição de uso associada ao seu Info.plist arquivo.

Se você não estiver usando os recursos Bluetooth do SDK para iBeacons, pode simplesmente definir a descrição para algo simples como "Usando Bluetooth".

Essa descrição de uso só é usada quando atua como um acessório Bluetooth LE adicionado aos modos em segundo plano. O SDK Xtremepush não usa esse modo, e o suporte ao iBeacon só é habilitado seguindo as instruções nas permissões de localização do iOS. A menos que você use o Acts como acessório Bluetooth LE em outra parte do seu app, isso não será mostrado ao usuário.

A falha em incluir essa chave de descrição resultará em uma rejeição automática ao enviar seu app para a App Store e uma notificação por e-mail semelhante à abaixo:

Certifique-se de definir o ID do usuário

Recomenda-se que, nesta fase, você use nosso método SDK para definir IDs de usuário, seguindo nosso guia dedicado para garantir que os dispositivos possam ser associados e direcionados em suas campanhas por seu próprio identificador único.