Back to Freedom.Tech Back
All Ledger Live Mobile releasesAll versions
Release Thu, May 28, 2026 6 min read

Ledger Live Mobile 4.6.0

Original release notes

4.6.0

Minor Changes

  • #17499 d7c5ad3 Thanks @LucasWerey! - Add @ledgerhq/lumen-ui-rnative-visualization dependency and expose a standalone Settings Debug "Lumen Visualization" preview screen rendering a sample LineChart.
  • #17676 7f11be9 Thanks @deepyjr! - Display the addresses count next to the section title on Asset Detail and add a "See all" action when an asset has more than 5 accounts.
  • #17532 72347d3 Thanks @LucasWerey! - Display PnL metric cards (Unrealised return, Cost basis) on the Analytics screen for the Wallet 4.0 release. Pressing the Unrealised card opens the PnL detail drawer (Unrealised / Realised / Total return); pressing the Cost basis card opens an info drawer. Portfolio data is sourced from @ledgerhq/wallet-pnl, visibility is gated by the pnl feature param and values respect discreet mode.
  • #17678 2b37ead Thanks @deepyjr! - Open the "See all" addresses entry from the Asset Detail screen in a bottom-sheet drawer instead of navigating to the CryptoAddresses screen. The portfolio-wide entry to the CryptoAddresses screen is unchanged.
  • #17433 bdcd8f0 Thanks @deepyjr! - Add asset detail coin options (NavBar trailing button + bottom sheet) to favourite/unfavourite a coin and hide/show it from the portfolio, with state persisted across sessions
  • #17586 2fda0b0 Thanks @deepyjr! - Update Asset Detail v4 loading state to render animated Skeleton placeholders (from @ledgerhq/lumen-ui-rnative) for the BalanceGraph header (Market price), BalanceDetails, Addresses, Transactions, MarketStats and PricePerformance sections. Section titles are also skeletoned during loading for visual consistency.
  • #17402 5c6c279 Thanks @gre-ledger! - Make formatAccount and formatOperation async to forward-compatibly await getAccountBridge
  • #17284 446020d Thanks @gre-ledger! - chore: async prep - toOperationRaw, toSignedOperationRaw and remaining bridge callers (LIVE-29186)

Make toOperationRaw, toSignedOperationRaw and toSignOperationEventRaw async in @ledgerhq/live-common, widen WalletSyncDataManagerResolutionContext.getAccountBridge in @ledgerhq/live-wallet to accept a Promise, and update remaining callers (apps/cli, apps/wallet-cli, apps/web-tools, mobile concordium, coin-tester-evm/solana, coin-modules-monitoring) to await the bridge.

  • #17338 19b82d1 Thanks @gre-ledger! - Remove the 6 deprecated top-level helpers from @ledgerhq/live-common: isAccountEmpty, clearAccount, getVotesCount, isEditableOperation, isStuckOperation, getStuckAccountAndOperation. Consumers must now resolve an AccountBridge first (via useAccountBridge/useAccountBridgeMany in React, or getAccountBridge/getAccountBridgeByFamily elsewhere) and call the corresponding method on the bridge. Desktop and mobile apps have been migrated.
  • #17498 20920de Thanks @LucasWerey! - Bump d3-array, d3-scale and d3-shape to their latest majors (and matching @types) in preparation for adopting @ledgerhq/lumen-ui-rnative-visualization.
  • #17537 6a0a6be Thanks @deepyjr! - Cap the Asset Detail addresses section to 5 items and add a "See all" button that opens the CryptoAddresses screen filtered by the current asset (with the "Add account" footer hidden). The portfolio-wide entry to CryptoAddresses is unchanged.
  • #17704 e278291 Thanks @gre-ledger! - Gate the device-ids push middleware behind the analyticsOptIn feature flag in addition to the user analytics consent. Device IDs are now only sent to /v2/pushdevices when the FF is enabled AND the user has opted in.
  • Replace the catch-all connectionError executor state with a focused deviceDisconnected state entered only via the DEVICE_DISCONNECTED event. The DeviceConnectionComponent no longer receives onError, and ExecutorPlatformConfiguration requires a DeviceDisconnectedComponent in place of the previous ConnectionErrorComponent.
  • Funnel any unexpected error escaping the inner connect-device state machine into a new terminal UnknownError ConnectDeviceUIState via a catchError wrapper in connectDeviceUseCase, so the observable's error channel is never reached in normal operation.
  • Add a UnknownErrorState component in the LWM connection view that renders the shared intentError wording for this terminal state.
  • #17295 0c205fb Thanks @cfloume! - Default analytics sharing to off until you explicitly opt in via the consent prompt. Existing preferences are preserved for returning users.
  • #17489 00b7cb9 Thanks @LucasWerey! - Fix asset detail addresses showing parent account balance instead of token balance
  • #17572 bf16e7e Thanks @deepyjr! - Fix the APY percentage shown in the Asset Detail Earn banner. The interest rate value is a decimal fraction (e.g. 0.04 for 4%) and was rendered as-is, which made every banner display "0.0% APY". The value is now converted to a percentage before formatting, and the parameterized banner is only shown when the rounded display percentage is greater than zero (the generic banner is used otherwise).
  • #17571 cd6a9ef Thanks @deepyjr! - Fix Earn redirection from the Asset Detail page. The Earn banner and the Earn deposit card now open the stake drawer filtered on the current asset, leading the user to the coin-specific Earn page instead of the generic Earn entry point.
  • #17637 809a266 Thanks @LucasWerey! - Fix Android crash on clear cache flow. Dispatching wipeCountervalues inside useCleanCache caused every mounted CounterValue consumer to re-render against the wiped state in a separate React commit from the subsequent reboot(); under Fabric this produced an IllegalStateException: The specified child already has a parent. Wipe is now dispatched from the reboot middleware in the same synchronous tick as the reboot action so React batches both updates and the RebootProvider key change unmounts the subtree before any countervalue consumer re-renders.
  • #17591 4e9a077 Thanks @cfloume! - Make sure push notifications data is initialized even if the user is not onboarded
  • #17656 847ed47 Thanks @LucasWerey! - Add hidden asset banner on the Asset Detail screen with a quick action to unhide the asset
  • #17554 295c8af Thanks @YazhuEth! - Fix memo tag drawer briefly flashing on the device selection step when ignoring the memo prompt
  • #17662 bb25536 Thanks @mcayuelas-ledger! - Centralize price formatting with consistent digit rules (2/6 fractional digits) and threshold marker for tiny variations
  • #17663 b294262 Thanks @aussedatlo! - Show a stuck-loader hint after 10s on mobile device-action loading screens to invite users to check their device
  • #17617 6cbcbdd Thanks @OlivierFreyssinet! - Improve console log readability when debugging via Chrome / React Native DevTools: mobile's ConsoleLogger now uses console.groupCollapsed with raw objects instead of stringifying everything to JSON, and the DMK logger emits a clearer DMK[tag] log type (with backward-compatible filtering in the logs viewer) instead of the generic live-dmk-logger.