hidden_logo 1.3.1
hidden_logo: ^1.3.1 copied to clipboard
Plugin that allows you to display hidden logo behind hardware barriers for iPhones
hidden_logo #
Place a brand widget behind an iPhone's notch or Dynamic Island. It stays hidden in normal portrait use and can appear in screenshots or screen mirroring.

Requirements #
- Flutter ≥3.24.0
- iOS ≥13.0
- Swift Package Manager: Flutter ≥3.27.0 (stable); CocoaPods works from Flutter 3.24.0.
Usage #
Add hidden_logo to your dependencies and import
package:hidden_logo/hidden_logo.dart. Place it in your app builder:
@override
Widget build(BuildContext context) {
return MaterialApp(
builder: (context, child) => HiddenLogo(
body: child!,
notchBuilder: (context, constraints) => MyNotchLogoBuilder(),
dynamicIslandBuilder: (context, constraints) => MyDynamicIslandLogoBuilder(),
),
home: const Scaffold(
body: Center(child: Text('App content')),
),
);
}
Replace MyNotchLogoBuilder and MyDynamicIslandLogoBuilder with your own widgets.
Use the supplied maximum constraints to size them and round the notch logo's
corners. Dynamic Island corners are rounded automatically; Display Zoom scaling
is handled by the plugin.
The logo is decorative and appears only in portrait on supported iPhones. Other devices display the app body without a logo.
- Set
isVisible: falseto hide the logo, for example during a splash screen. LogoVisibilityMode.onlyInBackgroundhides it while the app is resumed. Screenshot and app-switcher capture timing depends on iOS.- Use a screenshot to preview the logo. Keep interactive or sensitive content in the app body.
Supported iPhones #
| Notch | Dynamic Island |
|---|---|
| X | 14 Pro |
| XR | 14 Pro Max |
| XS | 15 |
| XS Max | 15 Plus |
| 11 | 15 Pro |
| 11 Pro | 15 Pro Max |
| 11 Pro Max | 16 |
| 12 | 16 Plus |
| 12 Mini | 16 Pro |
| 12 Pro | 16 Pro Max |
| 12 Pro Max | 17 |
| 13 | Air |
| 13 Mini | 17 Pro |
| 13 Pro | 17 Pro Max |
| 13 Pro Max | 18 Pro |
| 14 | 18 Pro Max |
| 14 Plus | |
| 16e | |
| 17e |
Unknown models, including iPhone Duo, display no logo until explicitly supported.