macOS
Baixar SDK
Projeto de Exemplo
Documentação da API do SDK
Antes de integrar o SDK, configure a plataforma macOS em seu projeto Pushwoosh. Siga o guia de configuração do macOS.
Vinculando o Pushwoosh.framework
Anchor link toAdicione o Pushwoosh.framework ao seu projeto através de um gerenciador de dependências, inserindo as seguintes linhas no seu podfile ou cartfile:
platform :osx, '10.7'
target 'MyApp' do pod 'Pushwoosh_mac'endgithub "Pushwoosh/pushwoosh-mac-sdk"Alternativamente, você pode simplesmente arrastar e soltar o framework em Link Binaries With Libraries nas Build Phases do seu projeto.
Adicionando bibliotecas
Anchor link toNa aba Build Phases do seu projeto, abra Link Binaries With Libraries e clique em Adicionar itens (botão ”+”). Procure e adicione as bibliotecas libz.tbd e libc++.tbd ao seu projeto:

Vinculando o aplicativo com o Painel de Controle Pushwoosh
Anchor link toNo seu Info.plist, adicione uma chave do tipo string Pushwoosh_APPID com o seu Código de Aplicação Pushwoosh como valor.
Modificando o AppDelegate
Anchor link toAdicione o seguinte código ao seu AppDelegate:
import PushKitimport Pushwoosh
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey : Any]? = nil) -> Bool {
//muito do seu código de inicialização
//-----------PARTE DO PUSHWOOSH-----------
NSUserNotificationCenter.default.delegate = Pushwoosh.sharedInstance()?.notificationCenterDelegateProxy
// define um delegate personalizado para o tratamento de pushes, no nosso caso - o view controllerPushwoosh.sharedInstance().delegate = self
// tratando o push no início do aplicativoPushwoosh.sharedInstance().handlePushReceived(aNotification.userInfo)
// registre-se para notificações push!Pushwoosh.sharedInstance().registerForPushNotifications()#import <Pushwoosh/Pushwoosh.h>
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification{ //muito do seu código de inicialização
//-----------PARTE DO PUSHWOOSH-----------
[NSUserNotificationCenter defaultUserNotificationCenter].delegate = [Pushwoosh sharedInstance].notificationCenterDelegateProxy;
// define um delegate personalizado para o tratamento de pushes, no nosso caso - o view controller [Pushwoosh sharedInstance].delegate = self;
// tratando o push no início do aplicativo [[Pushwoosh sharedInstance] handlePushReceived:[aNotification userInfo]];
// registre-se para notificações push! [[Pushwoosh sharedInstance] registerForPushNotifications]; }Adicione o seguinte código ao seu UIApplicationDelegate (mesmo arquivo acima).
// callback de sucesso do registro de notificação push do sistema, delega para PWMessagingDelegatefunc application(_ application: NSApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) { Pushwoosh.sharedInstance()?.handlePushRegistration(deviceToken)}
// callback de erro do registro de notificação push do sistema, delega para PWMessagingDelegatefunc application(_ application: NSApplication, didFailToRegisterForRemoteNotificationsWithError error: Error) { Pushwoosh.sharedInstance()?.handlePushRegistrationFailure(error)}// callback de sucesso do registro de notificação push do sistema, delega para o pushManager- (void)application:(NSApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { [[Pushwoosh sharedInstance] handlePushRegistration:deviceToken];}
// callback de erro do registro de notificação push do sistema, delega para o pushManager- (void)application:(NSApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error { [[Pushwoosh sharedInstance] handlePushRegistrationFailure:error];}Para lidar com as notificações push, adicione a seguinte função ao seu UIApplicationDelegate (o mesmo arquivo de três passos acima):
//este evento é disparado quando o push é recebidofunc pushwoosh(_ pushwoosh: Pushwoosh!, onMessageReceived message: PWMessage!) { print("onMessageReceived: \(String(describing: message.payload))")}
//este evento é disparado quando o usuário toca na notificaçãofunc pushwoosh(_ pushwoosh: Pushwoosh!, onMessageOpened message: PWMessage!) { print("onMessageOpened: \(String(describing: message.payload))")}//este evento é disparado quando o push é recebido- (void)pushwoosh:(Pushwoosh *)pushwoosh onMessageReceived:(PWMessage *)message { NSLog(@"onMessageReceived: %@", message.payload);}
//este evento é disparado quando o usuário toca na notificação- (void)pushwoosh:(Pushwoosh *)pushwoosh onMessageOpened:(PWMessage *)message { NSLog(@"onMessageOpened: %@", message.payload);}Habilitando Notificações Push
Anchor link toVá para Signing and Capabilities no seu target. Pressione + Capability e adicione Push Notifications.
