下一版Android將為根應用程序開發人員帶來更多問題
您可能還記得幾個月前,XDA高級公認開發人員Chainfire分析了AOSP即將進行的 一些更改,這些更改可能會出現在下一個公開發布的Android版本中。作為快速刷新,當時存在問題的兩個提交通過阻止SU二進制文件執行存儲在/ data 分區上的文件,使 根應用程序開發人員的生活更加困難 。由于此更改,必須從/ data分區中特定于應用程序的目錄提取并執行文件的啟用根的應用程序 進行更新,才能在下一版本的Android上運行。幸運的是,Chainfire詳細介紹了一些可能的解決方法,這些解決方法已添加到“ 如何使用”頁面中。這些解決方法包括從RAM或rootfs中提取代碼并運行代碼,將命令直接傳遞給SU,等等。
現在,對A??OSP進行了一些更改,很可能會出現在Android的下一版本中-可能是4.4.3、4.5,也可能是Google決定授予該新版本的任何其他版本。首先,與Chainfire以前的變通方法相比,對SELinux進行更改以使其更加安全的做法現在需要更復雜的上下文切換。接下來,似乎ART確實將成為下一版Android中的默認運行時編譯器。并且由于其當前的不成熟狀態和SELinux施加的限制,ART可能會導致崩潰,從而在進行錯誤的調用時導致整個系統崩潰。最后,似乎非靜態生成的可執行文件現在需要從Android 4.1開始受支持的PIE(與位置無關的可執行文件)。
盡管進行了上面詳細介紹的所有更改,Chainfire已經構建并發布了新版本的SuperSU(1.97),可以解決所有潛在問題。您可以直接從SuperSU線程獲得此構建。Chainfire還更新了他的“ 如何使用”指南,其中包含有關這些更改以及如何解決這些更改的信息。