Repository navigation
Expressive Launcher 5.0.0 QA — Butter, Brains, and Edge Beats
Pre-releaseWelcome to Expressive Launcher 5.0.0 (Build 62)! Our biggest release yet: Cover folders, Smart category tabs, a sturdier At a Glance, snappier settings, and Pro licenses that survive resets.
✨ What's New & Improved
1. 🧈 Butter-Smooth 120Hz Settings & Instant Toggles
-
Zero-Disk-I/O Architecture: Settings scrolling and switches are now completely decoupled from disk bottlenecks. We eliminated synchronous DataStore disk reads (
firstBlocking()) and Room SQLite stalls on the Android UI looper, routing lookups through an instantaneous$O(1)$ in-memory cache. - Instant Switch Feedback: Toggle switches now use optimistic UI dispatch—flipping instantaneously on touch with zero jank, while background disk persistence commits quietly on an asynchronous coroutine.
- Suspended Background Recreation: Toggling settings options no longer forces the background Home workspace to rebuild itself while you're still in the preferences menu.
2. 📁 Cover Folders & Folder Widget Polish
- App-Dominant Cover Mode: Turn any folder into an undercover app. A Cover folder displays the full-size icon of its primary app with an elegant bottom-right badge.
- Single tap: Launches the primary app instantly.
- Swipe up: Triggers a tactile haptic tick (
GESTURE_START) and smoothly expands the folder grid. (known issue, see below)
- Dynamic Auto-Promotion: Drag an app out or uninstall it? Position 0 dynamically promotes the next app in line to become the cover star without manual reconfiguration.
- Widget Conversion Guard: Converting a Cover folder to a Folder widget safely detaches cover flags, and the deliberate ⋮ menu ensures conversions always require a conscious second tap.
3. 🧠 Smart Drawer Auto-Categorization
- Effortless App Organization: Say goodbye to manual filing. Your app drawer can now automatically organize installed apps into categorized tabs (Social, Media, Games, Work & Productivity, Utilities) driven by Android's native
ApplicationInfo.categorymetadata. - Asynchronous Category Indexing: Category resolution runs entirely on the background
MODEL_EXECUTOR. Opening and flinging through the drawer remains silky smooth at a locked 120Hz. - Profile Parity: Fully supports both Personal and Work profile tabs in your app drawer. Toggle it anytime via Settings → App drawer → Smart categories.
4. 🌤️ Smartspace 2.0 & At a Glance Resilience
- Zero-Blank Warm Start: Smartspace no longer greets you with an awkward empty void while external IPC services boot up. Local date, time, and weather cards render immediately on attach, gracefully transitioning when Smartspacer targets arrive.
- Flow Crash Isolation: Every external data feed (Bluetooth telemetry, Battery, Torch, Media) is individually isolated with defensive exception barriers. If an accessory provider hiccups, your weather and calendar remain rock solid.
- Connected Bluetooth Battery Telemetry: Live battery percentage indicators for connected Bluetooth headsets and audio devices, automatically surfacing battery alerts when power dips below 20%. (known issue, see below)
- Active Card Retention: Navigating multi-card glanceables now binds dynamically to unique target IDs rather than volatile numeric indices, preventing cards from jumping unexpectedly during background refreshes.
5. 🔑 Pro Licenses That Survive Resets
- Moves after a reset: A device-bound Pro key used to stop working after a factory reset, reinstall or cleared data. Now the launcher asks the activation service to move it to your device automatically (up to 3 new devices every 30 days).
- Restore by receipt: Lost your key? Enter the Transaction ID from your PayPal receipt and the license is re-issued for this device.
- Stable Device ID: Reinstalling or clearing app data keeps the same Device ID, so your key just keeps working.
- Still offline-first: Keys are checked on your device. You only need a connection when a license moves to a new device.
⚠️ Known issues in 5.0.0
We found a few problems in 5.0.0 after release. Fixes are on the way; until they land, here's how to stay clear of them:
- Home can stop updating after a dark-mode or font change, or after visiting Settings. Parts of Home, such as the search bar and the Customize sheets, can freeze or keep showing old values, and with a keyboard or D-pad Home can crash. Restart Home to clear it: open Home settings (long-press an empty spot on Home), tap ⋮ at the top and choose Restart Expressive Launcher L3. Fixed in 5.0.2 QA.
- Don't rename "Open app" action shortcuts. These are the shortcuts you add from the widget picker under Expressive Launcher L3 > Actions. Renaming one can make Home crash every time it starts. Fixed in 5.0.1 QA.
- Avoid a wallpaper-only restore. When you restore a backup, keep Layout and settings selected. A restore with only Wallpaper selected can wipe your Home layout, custom icons and drawer folders. Make a fresh backup before restoring. Fixed in 5.0.1 QA.
- Don't lower Dock pages or Dock rows. Lowering either setting deletes the dock icons that no longer fit, and they don't come back when you raise it again. On foldables, folding the phone can do the same.
- Everything jumped to the top-left corner? After a "No room for a widget here." message, Home can later draw every icon and widget in the top-left corner. Your layout is safe: restart Home from ⋮ in Home settings and everything returns to its place. Fix in progress. Fixed in 5.0.2 QA.
- Cover folders: swipe up doesn't open the folder yet. Tapping still opens the cover app. To reach the other apps, long-press the folder and choose Disable cover. For a folder in the dock, drag it onto a Home page first. The option is also hidden while Lock home screen is on. Fix in progress.
- The headphone battery card doesn't appear yet. The At a Glance card for connected Bluetooth headphones doesn't work in this build, and there is no Nearby devices permission to grant for it. Fix in progress.
- Blocked by Play Protect? If Play Protect stops the install from your browser, use the Core build: Expressive Launcher 5.0.0 Core. It's the same app with the same signature, without the accessibility service and notification listener, so it leaves out notification dots, accessibility gestures and At a Glance Now Playing. Core is on the QA channel for now.
😄 Launcher Humor
⚡ Our settings switches no longer stop to think things over. Tap, flip, done.
📁 Cover Folders: Because sometimes you want your folder to dress up as Spotify in front of its friends, until you swipe it up and reveal the secret folder society inside.
🌐 Our new Cloudflare worker lives on the edge, runs in milliseconds, and never sleeps. Just remember to give it a little Wi-Fi handshake during activation—it's serverless, not psychic!
💬 Community Notes
- After a factory reset: Paste your Pro key (or your PayPal Transaction ID) while online, and the license moves to your reset device.
- Feedback & Bug Triage: Thank you to everyone in @ExpressiveLauncherFeedback for reporting switch delays and Smartspace blanking during beta testing!
🧩 Release Riddle
I look like a single app on your screen, but a gentle flick upward reveals an entire team. Tap me once and my leader charges ahead; swipe me up and my hidden squad spreads instead. What am I?
Tap to reveal answer
A Cover Folder! Tap launches app #1, swipe-up reveals the whole folder crew. 🎩📱
🛡️ Verification & Technical Details
- Version:
5.0.0(Build62), QA channel · Packagedev.launcher.expressive.l3 - Validated by Jenkins: 550 Android unit tests, 339 CI contract tests and 33 activation-worker tests passed; an isolated Android 17 QPR2 emulator (API 37.2) installed 4.1.2, upgraded in place to this exact APK with settings retained, and passed launch, drawer, search, At a Glance and clean-log checks. Emulator only, not a physical device.
- Source revision:
e98e7ed97526fd2e971580744a2dcf04204dac2f - APK SHA-256:
a9cc9e7d621096d3d61895df19d396f19fc72f9bae89bf53227692807653ff32 - Release certificate SHA-256:
C1:41:60:30:6D:5C:05:9B:3D:11:9F:15:FB:74:E0:8C:57:CC:27:23:16:E8:0B:36:E1:92:C7:1D:C9:E4:D0:D2 - Derived from Lawnchair and AOSP Launcher3; see the repository's license and upstream notices.
🔗 Links & Downloads:
- 1-Click Add to Obtainium: Add to Obtainium
- GitHub Repository: https://github.com/denson9874/ExpressiveLauncher
- Community & Feedback: @ExpressiveLauncherFeedback
- Announcements Channel: @ExpressiveGroup