
Research
/Security News
9 Malicious NuGet Packages Deliver Time-Delayed Destructive Payloads
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.
@abeman/react-native-splash-screen
Advanced tools
A performant splash screen for React Native apps with smooth transitions and memory optimization.
npm install @abeman/react-native-splash-screen
# or
yarn add @abeman/react-native-splash-screen
cd ios && pod install
import SplashScreen
@main
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
// Show splash screen on app launch
SplashScreen.show()
return true
}
}
android/app/src/main/res/drawable/launch_screen.xml:<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/splash_background" />
<item>
<bitmap
android:src="@mipmap/ic_launcher"
android:gravity="center" />
</item>
</layer-list>
android/app/src/main/res/values/colors.xml:<resources>
<color name="splash_background">#FFFFFF</color>
</resources>
android/app/src/main/res/values/styles.xml:<style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
<item name="android:windowBackground">@drawable/launch_screen</item>
<item name="android:windowDisablePreview">false</item>
</style>
import com.splashscreen.SplashScreenModule
class MainActivity : ReactActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
SplashScreenModule.showSplash(this)
super.onCreate(savedInstanceState)
}
}
import SplashScreen from '@abeman/react-native-splash-screen';
// In your app's entry point (App.tsx)
useEffect(() => {
// Hide splash screen after app loads
SplashScreen.hide();
}, []);
import SplashScreen from '@abeman/react-native-splash-screen';
// Show splash screen with configuration
SplashScreen.show({
preventFlash: true
});
// Hide with smooth fade animation
SplashScreen.hide({
fade: true,
duration: 0.5, // seconds
preventFlash: true
});
// Release memory when needed
SplashScreen.releaseMemory();
show(config?: SplashScreenConfig)Shows the splash screen.
Parameters:
config (optional):
preventFlash: boolean - Prevent white flash (default: true)hide(config?: SplashScreenConfig)Hides the splash screen.
Parameters:
config (optional):
fade: boolean - Enable fade animation (default: true)duration: number - Animation duration in seconds (default: 0.3)preventFlash: boolean - Prevent white flash during transitionreleaseMemory()Releases cached resources to free up memory.
import SplashScreen, { SplashScreenConfig } from '@abeman/react-native-splash-screen';
const config: SplashScreenConfig = {
fade: true,
duration: 0.5,
preventFlash: true
};
SplashScreen.hide(config);
import React, { useEffect, useState } from 'react';
import { View, Text, ActivityIndicator } from 'react-native';
import SplashScreen from '@abeman/react-native-splash-screen';
export default function App() {
const [isLoading, setIsLoading] = useState(true);
useEffect(() => {
loadAppData();
}, []);
const loadAppData = async () => {
try {
// Load your app data, authenticate user, etc.
await fetchUserData();
await loadAppResources();
setIsLoading(false);
// Hide splash screen with smooth transition
SplashScreen.hide({
fade: true,
duration: 0.5,
preventFlash: true
});
} catch (error) {
// Handle error
SplashScreen.hide();
}
};
if (isLoading) {
return (
<View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
<ActivityIndicator size="large" />
</View>
);
}
return (
<View style={{ flex: 1 }}>
<Text>Welcome to the app!</Text>
</View>
);
}
SplashScreen.show() as early as possible in your native codereleaseMemory() after hiding splash screen in memory-constrained situationspreventFlash: true for seamless transitionsMake sure you've set the windowBackground in your app theme and use preventFlash: true when hiding.
Ensure you're calling SplashScreen.show() in didFinishLaunchingWithOptions before any other setup.
Make sure to import types: import { SplashScreenConfig } from '@abeman/react-native-splash-screen'
See the contributing guide to learn how to contribute to the repository and the development workflow.
MIT
Made with create-react-native-library
FAQs
Splash screen
The npm package @abeman/react-native-splash-screen receives a total of 33 weekly downloads. As such, @abeman/react-native-splash-screen popularity was classified as not popular.
We found that @abeman/react-native-splash-screen demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
/Security News
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.

Security News
Socket CTO Ahmad Nassri discusses why supply chain attacks now target developer machines and what AI means for the future of enterprise security.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.