Unhandled promise rejection

Please provide the following:

  1. SDK Version:“expo”: “~39.0.2”,
  2. Platforms(Android/iOS/web/all):all

Hello, Could you give me some recommendation to solve this error:

[Unhandled promise rejection: Error: No native splash screen registered for provided activity. Please configure your application’s main Activity to call ‘SplashScreen.show’

The message occurs when using “AppLoading” and “expo-font” in “expo”: “~ 39.0.2”,

Thank you!

Hey @dent, you’ll need to make sure you are running the latest version of Expo client to get the fix for this issue.

Cheers,
Adam

Hi @adamjnav
this my version:
$ expo --version
3.27.13

I just ran the command: “expo upgrade” and you were wrong.

tk!

Hola, acabo de solucionar mi problema

Problema:

[Unhandled promise rejection: Error: No native splash screen registered for provided activity. Please configure your application’s main Activity to call ‘SplashScreen.show’ (https://github.com/expo/expo/tree/master/packages/expo-splash-screen#-configure-android).]

  • node_modules/react-native/Libraries/BatchedBridge/NativeModules.js:103:50 in promiseMethodWrapper

Causa:

`
import React, { useState } from ‘react’;
import { StyleSheet, Text, View } from ‘react-native’;
import CategoriesScreen from ‘./screens/CategoriesScreen’;
// npm install --save expo-font o expo install --save expo-font
import * as Font from ‘expo-font’;
import { AppLoading } from ‘expo’;

const fetchFont = () => {
return Font.loadAsync({
‘open-sans’: require(’./assets/fonts/OpenSans-Regular.ttf’),
});
};

export default function App() {
const [fontLoaded, setFontLoaded] = useState(false);

if (!fontLoaded) {
return (
<AppLoading
startAsync={fetchFont}
onFinish={() => setFontLoaded(true)}
/>)
}
return (



);
}

const styles = StyleSheet.create({

});
`

Salida en terminal:

[Unhandled promise rejection: Error: No native splash screen registered for provided activity. Please configure your application’s main Activity to call ‘SplashScreen.show’ (https://github.com/expo/expo/tree/master/packages/expo-splash-screen#-configure-android).]

  • node_modules/react-native/Libraries/BatchedBridge/NativeModules.js:103:50 in promiseMethodWrapper
  • node_modules/@unimodules/react-native-adapter/build/NativeModulesProxy.native.js:15:23 in moduleName.methodInfo.name
  • node_modules/expo-splash-screen/build/SplashScreen.js:23:7 in preventAutoHideAsync
  • node_modules/regenerator-runtime/runtime.js:63:36 in tryCatch
  • node_modules/regenerator-runtime/runtime.js:293:29 in invoke
  • node_modules/regenerator-runtime/runtime.js:63:36 in tryCatch
  • node_modules/regenerator-runtime/runtime.js:154:27 in invoke
  • node_modules/regenerator-runtime/runtime.js:189:16 in PromiseImpl$argument_0
  • node_modules/react-native/node_modules/promise/setimmediate/core.js:45:6 in tryCallTwo
  • node_modules/react-native/node_modules/promise/setimmediate/core.js:200:22 in doResolve
  • node_modules/react-native/node_modules/promise/setimmediate/core.js:66:11 in Promise
  • node_modules/regenerator-runtime/runtime.js:188:15 in callInvokeWithMethodAndArg
  • node_modules/regenerator-runtime/runtime.js:211:38 in enqueue
  • node_modules/regenerator-runtime/runtime.js:238:8 in exports.async
  • node_modules/expo-splash-screen/build/SplashScreen.js:23:7 in preventAutoHideAsync
  • node_modules/expo/build/launch/AppLoadingNativeWrapper.js:5:8 in AppLoading#constructor
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:7655:17 in constructClassInstance
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:12377:26 in updateClassComponent
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:19181:22 in beginWork$1
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:18085:22 in performUnitOfWork
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:18013:38 in workLoopSync
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:17977:18 in renderRootSync
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:17674:33 in performSyncWorkOnRoot
  • [native code]:null in performSyncWorkOnRoot
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:5321:31 in runWithPriority$argument_1
  • node_modules/scheduler/cjs/scheduler.development.js:653:23 in unstable_runWithPriority
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:5316:21 in flushSyncCallbackQueueImpl
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:5304:28 in flushSyncCallbackQueue
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:17125:30 in scheduleUpdateOnFiber
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:20527:14 in updateContainer
  • node_modules/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js:21068:17 in render
  • node_modules/react-native/Libraries/ReactNative/renderApplication.js:54:4 in renderApplication
  • node_modules/react-native/Libraries/ReactNative/AppRegistry.js:117:25 in runnables.appKey.run
  • node_modules/react-native/Libraries/ReactNative/AppRegistry.js:213:4 in runApplication
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:416:4 in __callFunction
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:109:6 in __guard$argument_0
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:364:10 in __guard
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:108:4 in callFunctionReturnFlushedQueue
  • [native code]:null in callFunctionReturnFlushedQueue

[Unhandled promise rejection: Error: No native splash screen registered for provided activity. Please configure your application’s main Activity to call ‘SplashScreen.show’ (https://github.com/expo/expo/tree/master/packages/expo-splash-screen#-configure-android).]

  • node_modules/react-native/Libraries/BatchedBridge/NativeModules.js:103:50 in promiseMethodWrapper
  • node_modules/@unimodules/react-native-adapter/build/NativeModulesProxy.native.js:15:23 in moduleName.methodInfo.name
  • node_modules/expo-splash-screen/build/SplashScreen.js:29:7 in hideAsync
  • node_modules/regenerator-runtime/runtime.js:63:36 in tryCatch
  • node_modules/regenerator-runtime/runtime.js:293:29 in invoke
  • node_modules/regenerator-runtime/runtime.js:63:36 in tryCatch
  • node_modules/regenerator-runtime/runtime.js:154:27 in invoke
  • node_modules/regenerator-runtime/runtime.js:189:16 in PromiseImpl$argument_0
  • node_modules/react-native/node_modules/promise/setimmediate/core.js:45:6 in tryCallTwo
  • node_modules/react-native/node_modules/promise/setimmediate/core.js:200:22 in doResolve
  • node_modules/react-native/node_modules/promise/setimmediate/core.js:66:11 in Promise
  • node_modules/regenerator-runtime/runtime.js:188:15 in callInvokeWithMethodAndArg
  • node_modules/regenerator-runtime/runtime.js:211:38 in enqueue
  • node_modules/regenerator-runtime/runtime.js:238:8 in exports.async
  • node_modules/expo-splash-screen/build/SplashScreen.js:29:7 in hideAsync
  • node_modules/expo/build/launch/AppLoadingNativeWrapper.js:15:33 in setTimeout$argument_0
  • node_modules/react-native/Libraries/Core/Timers/JSTimers.js:130:14 in _callTimer
  • node_modules/react-native/Libraries/Core/Timers/JSTimers.js:383:16 in callTimers
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:416:4 in __callFunction
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:109:6 in __guard$argument_0
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:364:10 in __guard
  • node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:108:4 in callFunctionReturnFlushedQueue
  • [native code]:null in callFunctionReturnFlushedQueue

HIlo seguido para solucionarlo:

revisar file > package.json:

“dependencies”: {
“expo”: “~39.0.3”,
“expo-status-bar”: “~1.0.2”,
“react”: “16.13.1”,
“react-dom”: “16.13.1”,
“react-native”: “https://github.com/expo/react-native/archive/sdk-39.0.3.tar.gz”,
“react-native-web”: “~0.13.12”
},

rm -rf node_modules , rm package-lock.json
npm ls react-native => react-native@0.63.2 expo client:install:ios and $ expo client:install:android // trabajo en linux y solo uso android.

npm install expo start

expo --version => 3.27.14

PDT: Antes de empezar todo este proceso, había corrido: $ npm i -g expo-cli@latest

Suerte!

:+1:
Gracias!