Next Version of Android to Cause Even More Issues for Root App Developers
You may recall that a few months back, XDA Senior Recognized Developer Chainfire analyzed some upcoming changes to AOSP that will likely appear in the next publicly available version of Android. As a quick refresher, the two commits in question at the time made life a little more difficult for root app developers by preventing the SU binary from executing files stored on the /data partition. Because of this change, root-enabled applications that extract and execute files from app-specific directories in the /data partition will have to be updated in order to work on the next version of Android. Luckily, Chainfire detailed a few potential workarounds that were added to his How to SU page. These workarounds include extracting the code and running it from RAM or rootfs, piping commands directly to SU, and so on.
Now, a few more changes have been made to AOSP, which will very likely appear in the next version of Android–be it 4.4.3, 4.5, or whatever other version number Google decides to bestow onto this new build. For starters, changes to SELinux to make it significantly more secure now require more complicated context switching than what was detailed in Chainfire’s previous workarounds. Next, it appears that ART will indeed be the default runtime compiler in the next version of Android. And due to its current immature state and restrictions imposed by SELinux, ART may cause crashes that take down the entire system when incorrect calls are made. Finally, it appears that PIE (Position-Independent Executable), which has been supported since Android 4.1, is now required on non-statically built executables.
Despite all of the changes detailed above, Chainfire already built and released a new version of SuperSU (1.97) that works around all of the potential issues. You can obtain this build directly from the SuperSU thread. Chainfire also updated his How to Su guide with information regarding these changes and how to work around them. And for the full story on all of these root-related changes, head over to Chainfire’s Google+ post.