SuperSU v1.00 has been released !
Posted by Chainfire on 28-01-2013 at 17:35:00 - Comments: 243 - Views: 143500
Project: SuperSU - Tags: Android Good news
Project: SuperSU - Tags: Android Good news
I have just released version 1.00 of SuperSU on both Google Play as well as XDA. This article serves as the release notes - for a bullet-point list of changes, see the changelog post on XDA.
Icons and theming
Least but not last, due to high demand, some customization to SuperSU's appearance is now possible. In SuperSU's settings you can now select between five different icons or being invisible in the app launcher.
It is also possible to select a theme. While SuperSU originally came in Holo's Dark variant as it was new and exciting at that time, you can now also choose for the Light variant, Light with dark actionbar, or Device default (on for example Samsung devices this is the TouchWiz colorscheme, on other brands it will be whatever their default is). Not all themes are supported across all devices and Android versions.
Bugs and performance improvements
Several annoying bugs have been squashed in this update, such as the ask again checkbox being forgotten. If you tick it now, it will stay ticked the next prompt, as was originally the idea. This bug caused quite a few people a headache! There have also been several adjustments to slow code that should somewhat speed up the app, though not dramatically.
Still no multi-user
I realise this is a high-profile feature and several people are waiting for it, however I have decided against delaying v1.00 for just this feature as I had initially planned.
After doing the numbers, it seems less than 10% of SuperSU users is even on Android 4.2 yet, and that includes phones. The multi-user function is only available on tablets (and maybe phones with custom ROMs), so that reduces the numbers further. It also seems very few of the people who are able to use the multi-user function actually use it.
So I'm going to guesstimate the multi-user feature being missing affects only about 1% of SuperSU users, which is not enough to delay this release for. Due to how SuperSU is built and how I want to implement the multi-user feature, it will be a fairly massive code change, so it will take some time to build.
New features
Aside from the icon and theme being selectable, SuperSU now allows you to convert to a /system app directly from settings.
There is also the option to trust the system user explicitly (it used to be this way by default, but this was changed a few versions ago) and not show any popups of the system user asks for root.
I've also added some CyanogenMod compatibility features. One of them is to respect CM's configuration to allow root or not, and the other is to install a backup script, so SuperSU may survive nightly updates.
New features - Pro
The Pro users also get some new features. There have been a lot of requests to be able to adjust the popup countdown before SuperSU automatically denies. This is now possible from SuperSU's settings.
Additionally, holding the deny or grant button in the popup will now present you with a number of options to deny or grant access for a specific amount of time.
For the more security minded, there is now also the option to assign a per-app specific PIN code for root access. This option is not available from the popup, and must be configured from the main SuperSU user interface.
su binary
Superuser updated its parameter parsing for the su binary last year, and SuperSU now follows the same parameter scheme. Developers should take note that the old and new styles of parameter parsing may not be 100% compatible, and you should test accordingly. One more reason to do what I have always advised other developers: start su as an interactive shell, and do not bother with su parameters (see my How-To SU guide).
There have been numerous minor adjustments to the su binary code that I will not go into in detail.
There have also been several adjustments to the code for installing/updating the binary from SuperSU itself when Play updates, which should reduce the number of installation failures, especially on older Android versions.
Notes on HTC devices
In recent HTC firmwares on S-ON devices, writing to the /system partition can cause the device to reboot. In the previous version of SuperSU this created a lot of installation trouble. Luckily, some custom firmwares have come out that will allow you to write the /system partition without issue.
Aside from that, the 1.00 version of the flashable update ZIP will setup your system so SuperSU will at least no longer attempt to write /system when you initially start it.
While this circumvents the issue partially, you should be aware that there are functions in SuperSU (such as enable/disable Superuser, OTA survival mode, PIN, convert to system app, etc) that will attempt to write /system and can still cause a crash or reboot.
For those using HTC firmwares that have the issue of mksh popping up every few seconds since a few SuperSU updates ago, there is now also a configuration item under settings to explicitly allow the system user root access. Enabling this setting should get rid of that problem.
Bugs ?
As there have been quite some changes in v1.00, I expect there will be some bugs. Please report those on XDA - not here on my blog, Google Plus, or Twitter.
I am also aware far from all the new texts have been localized yet. It is likely there will be a v1.01 soon, if only to update the translations.
Links
SuperSU on Google Play
SuperSU Pro (key) on Google Play
SuperSU thread on XDA
Changelog post on XDA
UPDATE-SuperSU-v1.00.zip (Mobile ODIN, CWM, TWRP flashable)
How-To SU guide
Icons and theming
Least but not last, due to high demand, some customization to SuperSU's appearance is now possible. In SuperSU's settings you can now select between five different icons or being invisible in the app launcher.
It is also possible to select a theme. While SuperSU originally came in Holo's Dark variant as it was new and exciting at that time, you can now also choose for the Light variant, Light with dark actionbar, or Device default (on for example Samsung devices this is the TouchWiz colorscheme, on other brands it will be whatever their default is). Not all themes are supported across all devices and Android versions.
Bugs and performance improvements
Several annoying bugs have been squashed in this update, such as the ask again checkbox being forgotten. If you tick it now, it will stay ticked the next prompt, as was originally the idea. This bug caused quite a few people a headache! There have also been several adjustments to slow code that should somewhat speed up the app, though not dramatically.
Still no multi-user
I realise this is a high-profile feature and several people are waiting for it, however I have decided against delaying v1.00 for just this feature as I had initially planned.
After doing the numbers, it seems less than 10% of SuperSU users is even on Android 4.2 yet, and that includes phones. The multi-user function is only available on tablets (and maybe phones with custom ROMs), so that reduces the numbers further. It also seems very few of the people who are able to use the multi-user function actually use it.
So I'm going to guesstimate the multi-user feature being missing affects only about 1% of SuperSU users, which is not enough to delay this release for. Due to how SuperSU is built and how I want to implement the multi-user feature, it will be a fairly massive code change, so it will take some time to build.
New features
Aside from the icon and theme being selectable, SuperSU now allows you to convert to a /system app directly from settings.
There is also the option to trust the system user explicitly (it used to be this way by default, but this was changed a few versions ago) and not show any popups of the system user asks for root.
I've also added some CyanogenMod compatibility features. One of them is to respect CM's configuration to allow root or not, and the other is to install a backup script, so SuperSU may survive nightly updates.
New features - Pro
The Pro users also get some new features. There have been a lot of requests to be able to adjust the popup countdown before SuperSU automatically denies. This is now possible from SuperSU's settings.
Additionally, holding the deny or grant button in the popup will now present you with a number of options to deny or grant access for a specific amount of time.
For the more security minded, there is now also the option to assign a per-app specific PIN code for root access. This option is not available from the popup, and must be configured from the main SuperSU user interface.
su binary
Superuser updated its parameter parsing for the su binary last year, and SuperSU now follows the same parameter scheme. Developers should take note that the old and new styles of parameter parsing may not be 100% compatible, and you should test accordingly. One more reason to do what I have always advised other developers: start su as an interactive shell, and do not bother with su parameters (see my How-To SU guide).
There have been numerous minor adjustments to the su binary code that I will not go into in detail.
There have also been several adjustments to the code for installing/updating the binary from SuperSU itself when Play updates, which should reduce the number of installation failures, especially on older Android versions.
Notes on HTC devices
In recent HTC firmwares on S-ON devices, writing to the /system partition can cause the device to reboot. In the previous version of SuperSU this created a lot of installation trouble. Luckily, some custom firmwares have come out that will allow you to write the /system partition without issue.
Aside from that, the 1.00 version of the flashable update ZIP will setup your system so SuperSU will at least no longer attempt to write /system when you initially start it.
While this circumvents the issue partially, you should be aware that there are functions in SuperSU (such as enable/disable Superuser, OTA survival mode, PIN, convert to system app, etc) that will attempt to write /system and can still cause a crash or reboot.
For those using HTC firmwares that have the issue of mksh popping up every few seconds since a few SuperSU updates ago, there is now also a configuration item under settings to explicitly allow the system user root access. Enabling this setting should get rid of that problem.
Bugs ?
As there have been quite some changes in v1.00, I expect there will be some bugs. Please report those on XDA - not here on my blog, Google Plus, or Twitter.
I am also aware far from all the new texts have been localized yet. It is likely there will be a v1.01 soon, if only to update the translations.
Links
SuperSU on Google Play
SuperSU Pro (key) on Google Play
SuperSU thread on XDA
Changelog post on XDA
UPDATE-SuperSU-v1.00.zip (Mobile ODIN, CWM, TWRP flashable)
How-To SU guide