Search code examples
iosswiftreact-native

Uncaught Error: Component 'Privont' has not been registered in React Native App


Uncaught Error: Component 'Privont' has not been registered in React Native App

I'm getting the following error in my React Native app:

"Uncaught Error: 'Privont' has not been registered. This can happen if:

  • Metro (the local dev server) is run from the wrong folder. Check if Metro is running, stop it and restart it in the current project.
  • A module failed to load due to an error and AppRegistry.registerComponent wasn't called."

I've checked my code, and it seems that "Privont" hasn't been registered. Here’s what I’ve tried so far:

  • Restarted the Metro bundler.
  • Verified that I’m running Metro in the correct project directory.
  • Checked the AppRegistry.registerComponent call in my code.

The error points to AppRegistry.js at line 205.

Here is my code:

1. index.js

import * as React from 'react';
import {AppRegistry} from 'react-native';
import App from './App';
import {name as appName} from './app.json';
import './Core/translations/i18next';
import {Provider} from 'react-redux';
import {PersistGate} from 'reduxjs-toolkit-persist/integration/react';
import {persistedStore, store} from './src/redux/store';

const AppWrapper = () => (
  <Provider store={store}>
    <PersistGate loading={null} persistor={persistedStore}>
      <App />
    </PersistGate>
  </Provider>
);

AppRegistry.registerComponent(appName, () => AppWrapper);

2. app.json

{
  "name": "Privont",
  "displayName": "Privont"
}

3. AppDelegate.mm

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  [FIRApp configure];
  // Add this line to call the above function
    ClearKeychainIfNecessary();
  self.moduleName = @"Privont";
  // You can add your custom initial props in the dictionary below.
  // They will be passed down to the ViewController used by React Native.
  self.initialProps = @{};

  return [super application:application didFinishLaunchingWithOptions:launchOptions];
}

Here is the error image : See Image


Solution

  • I was using the deprecated react-native-push-notification package. I uninstalled it and replaced it with @notifee/react-native, which is working fine.