- Related: ledger-live-desktop
Ledger Live is a mobile companion app for Ledger hardware wallets. It allows users to manage their crypto assets securely, such as Bitcoin, Ethereum, XRP and many others. Ledger Live mobile is available for iOS and Android.
Ledger Live is a native mobile application built with React Native, React, Redux, RxJS,.. and some native libraries. The architecture is analog to the desktop application and also uses our C++ library, the lib-ledger-core to deal with blockchains (sync, broadcast,..) via ledger-core-node-bindings. It communicates to the brand new Ledger Nano X via Bluetooth to manage installed applications, to update the device firmware, to verify public addresses and to sign transactions with ledgerjs. We also share some logic with live-common.
- Node LTS version
- Yarn 1.10.1 or above
- XCode
- Android Studio
install dependencies.
Runs your app in development mode.
Sometimes you may need to reset or clear the React Native packager's cache. To do so, you can pass the --reset-cache
flag to the start script:
yarn start -- --reset-cache
or open ios/ledgerlivemobile.xcodproj
or open android/
in Android Studio.
Delete the application data for Ledger Live Mobile, equivalent to doing it manually through settings
Passing a base64 encoded export string (the export from desktop) will trigger an import activity and allow easy data setting for development.
Optional environment variables you can put in .env
, .env.production
or .env.staging
for debug, release, or staging release builds respectively.
DEVICE_PROXY_URL=http://localhost:8435 # enable a dev mode to use the device over HTTP. use with https://github.com/LedgerHQ/ledgerjs/tree/master/packages/hw-http-proxy-devserver
BRIDGESTREAM_DATA=... # come from console.log of the desktop app during the qrcode export. allow to bypass the bridgestream scanning
DEBUG_RNDEBUGGER=1 # enable react native debugger
DISABLE_READ_ONLY=1 # disables readonly mode by default
yarn sync-flowtyped
yarn sync-locales
When trying to build with XCode 10 and React Native v0.57.0, you might have issues with third party packages from React Native. To solve this issue you must:
./node_modules/react-native/scripts/ios-install-third-party.sh
The build on XCode 10 should then work.