Du kannst auch die deutsche Version dieses Artikels lesen.
Consigue la versión en español de este artículo.

After extensive testing, we released the BitBoxApp for Android. It provides all features of the desktop application, as it is built from the same codebase. If you want, you never need to touch a desktop computer with your BitBox02 hardware wallet again. Get it on Google Play!

BitBoxApp: the companion for your BitBox02 hardware wallet

Every hardware wallet needs a companion app. The BitBoxApp was launched back in 2018, as the companion for our BitBox02 hardware wallet. The minimalist design includes a beginner’s user guide that helps you with every step, from setup to regular usage to answering more technical Bitcoin questions. Still, we were able to include native Segwit, coin control and custom full node support, a first for hardware wallets back then.

From the same source code, we are able to compile executable applications for Windows, macOS and Linux. And we can compile it for mobile devices as well!

Of course, small screens need adjustments in the user interface. To gather feedback and refine the mobile experience, we published the BitBoxApp as an Android Early Access version last year. Although not yet fully optimized for mobile usage, the feedback was good. The option to use the BitBox02 hardware wallet without a computer made some users switch completely.

BitBoxApp now available for Android

This week, we officially released the BitBoxApp for Android. This means you now have all the features of your BitBox02 hardware wallet available on Android devices. Thanks to the USB-C connector, on most devices you don’t even need a cable or an adapter. Just plug it directly into your phone and use Bitcoin on the go.

A few main changes in the user interface were needed to accommodate using the wallet with a small touch screen. This includes proper scaling for different screen orientations, bigger buttons and for example using toggle switches instead of checkboxes.

Use the BitBox02 everywhere you go

The cool thing about our software architecture is that we use the same codebase for all devices. This means that the mobile version is not a limited information-only app, but the real deal. You can set up the BitBox02 from scratch, update the firmware, send and receive transactions, connect it to your own Bitcoin full node, even over Tor, without ever touching a desktop computer.

Behind the scenes

Wonder how we can magically create a desktop application for Windows, Mac and Linux, as well as an Android mobile app, all from the same codebase?

The core of the BitBoxApp, which handles all the business logic, is written in Go, a statically typed language that can target all common platforms, including mobile environments. We call it the app backend. This core tier interacts with your BitBox02, communicates with the blockchain, computes your address balances and creates new transactions. It does not contain any secrets, however, as your private keys never leave the BitBox02 hardware wallet.

Software architecture of the BitBoxApp, for all platforms

The user interface is a React frontend written in JavaScript / TypeScript, using the lightweight Preact framework. This allows our designers and frontend developers to easily contribute to the desktop application. It is just a simple view layer, calculations are handled in the Go backend. The frontend is running in a QtWebEngine (or Android WebView on mobile). Only internal resources are displayed, external links are always opened in your default browser.

There are tasks that directly depend on the underlying platform and cannot be abstracted. For example, we built a native in-process communication bridge from the app backend to the frontend for each individual platform to update the user interface and handle user input. Furthermore, each platform implements a small interface in the native environment for functionality like USB communication, opening URLs in an external browser, or enabling the QR code reader (see implementation of Android interface).

This architecture allows us to maintain and extend a single codebase, and update the BitBoxApp across all supported platforms simultaneously.

Try it out!

Naturally, this release of our BitBoxApp in the Android Play Store is just the first step. We will listen to your feedback closely to optimize and improve the mobile experience further.

Go ahead and give it a try!

Shift Crypto is a privately held company based in Zurich, Switzerland. Our international team of specialists across engineering, cryptosecurity and Bitcoin core development build the BitBox products and provide consulting services. The BitBox02, a second generation hardware wallet, equips individuals to easily store, protect, and transact cryptocurrencies. Its companion, the BitBoxApp, provides an all-in-one solution to securely manage your digital assets with ease.