question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Local notification showing in console, but not appearing on device

See original GitHub issue

Hello!

I am trying to test out Push Notification in my app. I can see the notification in the console like this:

'NOTIFICATION:', { foreground: true,
  userInteraction: false,
  message: 'My Notification Message',
  data: {},
  badge: 10,
  alert: 'My Notification Message',
  sound: 'default',
  finish: [Function: finish] }

But nothing appears on the device. I am debugging on iPhone X with iOS 11.

I have also tried on my own iPhone X with iOS 12, but then I run into this issue that I can’t seem to solve. .

I have linked everything according to the guide from React Native, as well as linking manually.

App.js

import PushNotification from 'react-native-push-notification';
import {PushNotificationIOS} from 'react-native';

PushNotification.configure({

  onRegister: function(token) {
    console.log( 'TOKEN:', token );

  },

  onNotification: function(notification) {

    console.log( 'NOTIFICATION:', notification );

    // process the notification
    // required on iOS only
    notification.finish(PushNotificationIOS.FetchResult.NoData);
  },

  permissions: {
    alert: true,
    badge: true,
    sound: true
  },

  popInitialNotification: true,
  requestPermissions: true,

});

In my component I try firing an local notification like this:

handleOnPress = () => {
     PushNotification.localNotification({
       title: "My Notification Title", // (optional)
        message: "My Notification Message", // (required)
        playSound: true, // (optional) default: true
        soundName: 'default', // (optional) Sound to play when the notification is shown. Value of 'default' plays the default sound. It can be set to a custom sound such as 'android.resource://com.xyz/raw/my_sound'. It will look for the 'my_sound' audio file in 'res/raw' directory and play it. default: 'default' (default sound is played)
        number: 10, // (optional) Valid 32 bit integer specified as string. default: none (Cannot be zero)
        repeatType: 'day', // (optional) Repeating interval. Check 'Repeating Notifications' section for more info.
        actions: '["Yes", "No"]',  // (Android only) See the doc for notification actions to know more
     });
   };

AppDelegate.m:

/**
 * Copyright (c) 2015-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

 @import GooglePlaces;




#import "AppDelegate.h"
#import <GoogleMaps/GoogleMaps.h>
#import <React/RCTPushNotificationManager.h>
#import <React/RCTBundleURLProvider.h>
#import <React/RCTRootView.h>


@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  [GMSPlacesClient provideAPIKey:@"AIzaSyC5Ng4S3l3w8uJtDwpCrcqa_2-ErGJDVfQ"];
  [GMSServices provideAPIKey:@"AIzaSyC5Ng4S3l3w8uJtDwpCrcqa_2-ErGJDVfQ"];
  NSURL *jsCodeLocation;

  jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];

  RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation
                                                      moduleName:@"Green"
                                               initialProperties:nil
                                                   launchOptions:launchOptions];
  rootView.backgroundColor = [[UIColor alloc] initWithRed:1.0f green:1.0f blue:1.0f alpha:1];

  self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
  UIViewController *rootViewController = [UIViewController new];
  rootViewController.view = rootView;
  self.window.rootViewController = rootViewController;
  [self.window makeKeyAndVisible];
  return YES;
  
  
  
}
// Required to register for notifications
- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings
{
  [RCTPushNotificationManager didRegisterUserNotificationSettings:notificationSettings];
}
// Required for the register event.
- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
{
  [RCTPushNotificationManager 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
{
  [RCTPushNotificationManager didReceiveRemoteNotification:userInfo fetchCompletionHandler:completionHandler];
}
// Required for the registrationError event.
- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error
{
  [RCTPushNotificationManager didFailToRegisterForRemoteNotificationsWithError:error];
}
// Required for the localNotification event.
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
  [RCTPushNotificationManager didReceiveLocalNotification:notification];
}
@end

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Reactions:4
  • Comments:6

github_iconTop GitHub Comments

6reactions
mazenchamicommented, Nov 2, 2018

+1

6reactions
bonlemuelcommented, Oct 11, 2018

+1 same result for me

Read more comments on GitHub >

github_iconTop Results From Across the Web

Local notification occurs but doesn't appear on the screen
1 Answer 1 · I used it.My problem is that notifications stop showing when they are sent too many times in a row....
Read more >
Local Notification not working in Background Mode
But when i run the app on device, notification are only working in foreground mode. When app is in background, notifications wont show....
Read more >
Notifications Not Shown - Mobile Push
The following are reasons why notifications may show as "Delivered" on the OneSignal dashboard or API, but are not visible on your device....
Read more >
Flutter notification not coming in device but in console its ...
When the app is open it will not show you the notification you will need to control that part and show a widget...
Read more >
Notifications | FlutterFire
iOS Simulators. FCM via APNs does not work on iOS Simulators. To receive messages & notifications a real device is required. Displaying notifications...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found