Skip to content

[Issues and Bugs Report] Get "Access Root failed" when reboot #454

Closed

Description

@SainoNamkho

Module App version / 模块版本

  • 1.3

Device model and system in used / 正在使用的设备型号以及使用的系统

hyperOS 2

Android version / Android 版本

15

Describe in detail why the problem occurred / 详细描述问题发生的具体原因

The app detects root access in the wrong way, always reporting "access root failed" while I already have magisk root.
Screenshot_2026-04-06-14-08-34-614_com.termux-edit.jpg

Confirm the contents you submitted / 确认一下你提交的信息

  • I certify that the above contents is correct / 我确保上述信息准确无误

Activity

  1. fankes commented on Apr 6, 2026

    @fankes
    Collaborator

    need log

  2. SainoNamkho commented on Apr 6, 2026

    @SainoNamkho
    ContributorAuthor

    Theres's no logic of any logs in the app about these behaviors. Only catched crashes are to be logged in apperrorstracking. If I reboot using power key, clear xposed logs and tap the reboot button in the app and get the error:

    Access Root failed

    Root permission cannot be obtained currently, please confirm that your device has been rooted and agree to grant Root permission.
    If you are using Magisk and installed the Shamiko module, please confirm whether it is currently in whitelist mode. (Whitelist mode will make it impossible to apply for Root permission)

    both logs in lsposed and apperrorstracking are totally empty.

    Let me elobrate more:

    confirmButton {
    if (isRootAccess)
    execShell(cmd = "reboot")
    else showWhenAccessRootFail()
    }
    val isRootAccess get() = runCatching {
    @Suppress("DEPRECATION")
    Shell.rootAccess()
    }.getOrNull() ?: false

    however Shell.rootAccess's behavior has been changed since topjohnwu/libsu@1912665,

    before 1912665

    Utils.isAppGrantedRoot() Shell.rootAccess()
    no su false false
    can su true true
    already su'ed true true

    after 1912665

    Utils.isAppGrantedRoot() Shell.rootAccess()
    no su Boolean.FALSE false
    can su null false
    already su'ed Boolean.TRUE true

    And topjohnwu already said

    deprecated please switch to isAppGrantedRoot()

    You cannot just supress the deprecation.

  3. reopened this on Apr 6, 2026
  4. fankes commented on Apr 6, 2026

    @fankes
    Collaborator

    @copilot fix this issue

  5. added a commit that references this issue on Apr 6, 2026
    cd0ec6c
  6. added a commit that references this issue on Apr 13, 2026
    d4875d7
  7. added a commit that references this issue on Oct 21, 2026
    549f110
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions