Custom ROM enthusiasts browsing our forums prior to 2011 might remember the days of repeatedly clicking the volume and power button to get anything done in recovery.

This was before the advent of touchscreen-enabled custom recoveries, of course, which are ubiquitous today. Leading the pack is Team Win's Recovery Project (TWRP), which supports virtually every device with an unlocked bootloader and features custom themes, custom scripts, and powerful partition management options all wrapped up in a simple UI designed for ease of use.

But despite how user friendly TWRP itself is, updating the recovery would require manually downloading the latest TWRP recovery image from their website onto your internal storage and flashing it over the fastboot protocol or within TWRP. Although there are a few fairly popular third-party applications on the Play Store that promise the ability to update the recovery partition without fastboot or recovery use, many of us prefer to use first-party applications in order to support the original developers. For the past 5 years of TWRP's existence, such an option has not been available. Today, however, the official TWRP application launches on the Google Play Store!


TWRP's Official App

Available starting today on the Play Store and soon as an APK directly from TWRP's website, the Official TWRP App is the first app that was developed by Team Win's Dees_Troy for the explicit purpose of maintaining TWRP. The app is free to use without any advertisements and does not require Google Play Services. Its main features include the ability to find and download the latest TWRP image for your device, flash said image to the recovery partition (requires root), and flash downloaded boot images to the boot partition (requires root).

As shown in the screenshots above, the app allows you to quickly find the latest TWRP image for your phone. In order to download the recovery image, you are temporarily re-directed to the TWRP website's download page for the image, but upon returning to the app you can quickly use the built-in file manager to find and select the downloaded image. Prior to flashing the image, you are given a final confirmation dialog in case you selected the wrong partition to flash to. Once you hit "okay" the TWRP app will automatically flash the image to the recovery partition using superuser access. If you downloaded a boot image from our forums and wish to flash that, you can use the built-in file manager to find, select, and flash the boot image to the boot partition all the same using this app.

Finally, in the settings menu you have the ability to check for TWRP updates in the background. You can select to check for an update once everyday (default) or every other day depending on your preferences.


TWRP Integration

In order to encourage users to keep their recovery regularly updated, new versions of TWRP will include a slimmed down version of the application package baked into the recovery image. In order to fit within the limited space available for the recovery partition, this slimmed down version of the app serves as simply a placeholder app which directs you to install the full application from the Play Store.

screenshot_20161215-214043

Don't worry, though, as TWRP will not force this app on you. Instead, you will be given the ability to opt-in to install this app via a prompt shown before rebooting the device within TWRP. This app can be installed as either a system or a user app, depending on whether or not you have system read-write permissions granted to TWRP. There will also be a check box you can select to stop TWRP from asking you to install the app, in case you want the prompt to disappear. All officially supported TWRP devices will receive an update in the coming days including this feature, with plans for the current Nexus devices, OnePlus phones, and a handful of Samsung devices to be first in line for the update.


TWRP Open Beta

Lead developer on the project Dees_Troy describes the application as an "open beta" of sorts. This means that the app is not fully feature complete right now, but there are plans to support additional features in the future. Currently, what's on the to-do list includes:

  • Open Recovery Scripting support
  • Google Pixel support, as the flashing tool needs to be updated to support the A/B partition layout
    • Once this is complete, the app may be updated to allow for flashing just a kernel zImage on the Google Pixel phones
  • Support for flashing images from external storage
  • Confirmation dialog after successfully flashing a recovery/boot image
  • Currently English only, but support for other languages is planned
  • Flatter color scheme

P3 Insights Partnership

The official TWRP application was developed in conjunction with P3 Insight GmbH, a subsidiary of the P3 Group. P3 Insight is well-known for their performance and service quality evaluation of U.K. mobile networks for which they have released several network testing applications. As a nature of this partnership, the official TWRP application will allow users to participate in global mobile network testing for P3 Insight. This service is opt-in. Denying the application permission to collect network quality data will not limit functionality of the main application in any way.

In any case, if you are interested in participating in P3 Insight's network testing, you will have the ability to opt-in during initial set-up of the app.

At the bottom of the set-up page, you are asked if you agree to enabling "insightCore." This is the technology that P3 Insight uses to collect network statistics. If you click on the "terms and conditions" link, you can view the full privacy policy prior to consenting to testing. The terms promise that no personally identifiable information (PII) is collected or shared outside of what data is necessary to compare various network metrics.

Once you agree or disagree with the terms, you will be brought to the main splash page of the app where you can either enter the main TWRP actions screen as shown previously or view the Network Statistics page provided by P3 Insight. If you denied access during set-up, you can click on Network Statistics to bring up the terms and conditions consent dialog once more. As of now, opting out cannot be performed without re-installing the app, but support for opting out within the app is planned for a future release.

Network Statistics are collected silently in the background while you are using your phone.  There are three metrics being tested here: Download Speed, Data Availability, and Signal Strength. Each of these are fairly self-explanatory, but there are some important things to note regardless. As shown in the "help" prompt for each metric, the app tries to ensure very minimal use of your data for those of you on metered connections. In addition, the app tries to avoid excessive battery drain by deriving statistics from very tiny packets of data or collecting statistics from data sent from other apps.

Finally, one thing I would like to mention is the color scheme used in the network statistics. Some of you might notice that the blue background coupled with the shades of blue used for the bar graphs in each network metric make viewing the graphs a bit difficult. I spoke with the developer regarding this, and he informed me that he will work with P3 Insight to improve the readability.

I myself have only tested the app and all of its features using my Nextbit Robin for the past day, so I have not been able to collect enough network statistics to contribute to the overall metrics shown within the app. But the hope is that enough people will find the app useful that they will contribute to P3 Insight's crowd-sourced study regarding mobile network performance and quality in their country. We're always excited to see the work done by members of Team Win, so we'll keep you updated if any major developments for the app occur.


Download the Official TWRP App

Note: We would like to kindly ask you to not take this time to bug any TWRP developers asking them to support a currently unsupported device. As always, please refer to the XDA forum thread with instructions on how to compile TWRP for your own device.