Hover launches v1.0: stable and scalable

Jess Shorland
Hover
Published in
4 min readApr 23, 2019

Today, after extensive reliability testing and improvements across seemingly infinite combinations of device makes/models, network operators, geographies, and Android versions, we release version 1.0 of the Hover Android SDK. 1.0 provides a stable, reliable, and production-ready SDK to programmatically automate any USSD action on any network provider globally.

Since the first alpha version of the SDK in 2016, we have confirmed live transactions on 2,839 unique mobile device models. Additionally, because Android only provides a dual SIM API for 5.1 and above, we had to build our own dual SIM support to provide backwards compatibility for devices running lower versions of the OS.

Devices that have successfully transacted with Hover by make and OS

According to Android data, v4.3–5.0 account for only 11.5% of the global Android device market. In stark contrast, they account for 44% of total devices using our SDK across 17 countries within South Asia and Sub-Saharan Africa.

Source: https://developer.android.com/about/dashboards

By building our own dual SIM support, we can now offer developers better tools and information to create more inclusive apps and services.

While we initially imagined a plug-and-play SDK built for a few markets and a relatively narrow use case, we quickly became a bottleneck for our early adopters, each with unique implementations of Hover. We needed to decentralize configurations and customization without compromising the reliability of the product, irrespective of network provider, country, and device make/model.

Today’s release reflects deep investments in technical reliability, the end-user experience, and creating deeper visibility for developers into previously opaque USSD transactions and device information.

Key updates include:

  • Custom transaction statuses: Retrieve valuable information about transaction success rates and reasons for failures. Parse confirmation USSD or SMS messages to set a transaction’s status and category (e.g. Failed due to insufficient balance). Write an optional message to display to end users when the parser matches.
  • Export history: All exports are saved and accessible for future downloads.
  • Pre-built test app: Test transactions in our pre-built test app. The APK is available for download after you configure at least one action. This feature is still in beta, so please let us know if you run into any bugs.

Changelog

  • Record both matched and missed SMS
  • Added confirmation screen before PIN entry
  • Better customization: Use an Android style to customize the look of the Confirm and PIN screens
  • Added default failure parsers which catch generic errors, such as network errors

Bug Fixes

  • Fix for out of memory error causing crashes
  • Fixes for dual SIM edge cases
    Fixes to parsers: the correct status was not being set in some cases
  • Fix to STK support. (STK support still in alpha)

Tons of other small fixes and improvements

But wait, there’s more! Here’s what to expect in the next few months:

A more usable dashboard to help surface insights, troubleshoot configurations, and manage apps and actions.

Coming soon: Action management
Coming soon: Archive apps and actions

--

--