Why AppLoading is deprecated?

Due to article of SDK 45:

expo-app-loading is deprecated — use expo-splash-screen directly instead: SplashScreen.preventAutoHideAsync() and SplashScreen.hideAsync() . The implementation is only a thin wrapper around expo-splash-screen that you can copy into your project if you’d like to keep using it.

But why? With this component we have declarative style for managing app`s state. This module is very useful in many cases as described in many docs on expo i.e:

import AppLoading from 'expo-app-loading';
import { useFonts, Inter_900Black } from '@expo-google-fonts/inter';

export default function App() {
  let [fontsLoaded] = useFonts({

  if (!fontsLoaded) {
    return <AppLoading />;

And expo team proposes add code of expo-app-loading all time for such cases? Why just not to leave it this module?

What reason is for deprecation?

Hey @sepu, as the deprecation message indicates, the app-loading module was merely a thin wrapper around the splash-screen module. For the sake of codebase hygiene and reducing overhead, it was best to move forward focusing on the splash screen module while offering users the direction to copy the code of app-loading into their project as a custom implementation.

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.