0

Instalação Push Notification Zo0r 2021

André Rodrigues
André Rodrigues

Após passar por alguns perrengues com a documentação do Zo0r Push Notifications, eu decidi criar um novo exemplo e escrever guia. Na documentação, o exemplo não está atualizado, e muitas coisas estão depreciadas, e para não passar por mais problemas (este ano), eu fui obrigado a documentar todos os passos corretos de uso do pacote para versões superiores a 60 do React Native. Abaixo os passos.

### Instalação 1

- instale o pacote principal:


```Comando Terminal

yarn add react-native-push-notification

```


- Depois instale o pacote IOS:


```Comando Terminal

yarn add @react-native-community/push-notification-ios

```


### Instalação 2


Nessa parte é necessário modificar os arquivos Delegates encontrados no diretório IOS, no caso desse projeto, eles se encontram dentro de pushnotification.


No arquivo Delegate.h, você irá os seguintes trechos:


```

#import <UserNotifications/UNUserNotificationCenter.h>

```


logo abaixo você vai encontrar a seguinte linha:


```

@interface AppDelegate : UIResponder <UIApplicationDelegate, RCTBridgeDelegate>

```


substitua ela por essa:


```

@interface AppDelegate : UIResponder <UIApplicationDelegate, RCTBridgeDelegate, UNUserNotificationCenterDelegate>

```


No Arquivo Delegate.m, você irá adicionar os seguintes trechos:


```

#import <UserNotifications/UserNotifications.h>

#import <RNCPushNotificationIOS.h>

```


Após adicionar os trechos acima, você irá adicionar esse trecho antes do @end:


```

// Required for the register event.

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken

{

[RNCPushNotificationIOS didRegisterForRemoteNotificationsWithDeviceToken:deviceToken];

}

// Required for the notification event. You must call the completion handler after handling the remote notification.

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo

fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler

{

[RNCPushNotificationIOS didReceiveRemoteNotification:userInfo fetchCompletionHandler:completionHandler];

}

// Required for the registrationError event.

- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error

{

[RNCPushNotificationIOS didFailToRegisterForRemoteNotificationsWithError:error];

}

// Required for localNotification event

- (void)userNotificationCenter:(UNUserNotificationCenter *)center

didReceiveNotificationResponse:(UNNotificationResponse *)response

withCompletionHandler:(void (^)(void))completionHandler

{

[RNCPushNotificationIOS didReceiveNotificationResponse:response];

}

```


Para fechar as edições dos Delegates, iremos adicionar as seguintes linhas:


```

//linha já existente- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

...

// Linhas a ser adicionada

UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];

center.delegate = self;


// linha já existente return YES;

}


//Linhas para serem adicionadas

-(void)userNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(UNNotificationPresentationOptions options))completionHandler

{

completionHandler(UNNotificationPresentationOptionSound | UNNotificationPresentationOptionAlert | UNNotificationPresentationOptionBadge);

}

```


Feita todas as etapas mencionadas acima, abra a pasta ios no terminal e mande um: pod install, após a execução desse comando é necessário que você abra a pasta IOS no Xcode, e lá você abra o pacote de seu projeto, no meu caso o pushnotification, abaixo as etapas de clicks.


1) Abrir o projeto no Xcode;

2) Abrir o pacote de seu projeto;

3) Clique em: 'Signing & Capabilities';

4) Clique em: 'Capability';

5) Adicione Background, e na tela maior de lado onde foi adicionado o background, clique nele e marque as checkbox de Background-Fetch, Remote Notifications e Background Processing;

6) Após esse processo, você pode ir Capability novamente e adicionar os push notification.


Agora é só você usar o meu exemplo como referência e adicionar o Push em sua aplicação. Você pode seguir este tutorial pelo Github também, inclusive lá tem o exemplo atualizado meu, link: https://github.com/Andre-Rodrigues-Dev-Web/Exemplo-Push-Notification-IOS-2021 . Espero ter ajudado. Até o próximo artigo.

0
0

Comentários (0)

None

Brasil