Android ICS/JB,以编程方式重新启动到安全模式?

Android ICS/JB,以编程方式重新启动到安全模式?,android,android-4.2-jelly-bean,Android,Android 4.2 Jelly Bean,我正在为我的galaxy nexus制作一个实用程序。我想在安全模式下重新启动平板电脑 我试着查看PowerManager 这似乎不会在安全模式下重新启动设备。是否可以通过编程方式重新启动设备?怎么做 基本上有两种进入安全模式的已知方法: Android检测到新安装的应用程序出现问题,并在进入安全模式时强制关闭 电源应用中的按键组合 我怀疑还有别的办法。如果有的话,大多数定制ROM的恢复和电源菜单都会包括这一点 传递给reboot的字符串是一个内核参数,只有在设备的内核具有该选项时才有效。你可以

我正在为我的galaxy nexus制作一个实用程序。我想在安全模式下重新启动平板电脑

我试着查看PowerManager

这似乎不会在安全模式下重新启动设备。是否可以通过编程方式重新启动设备?怎么做

基本上有两种进入安全模式的已知方法:

Android检测到新安装的应用程序出现问题,并在进入安全模式时强制关闭

电源应用中的按键组合

我怀疑还有别的办法。如果有的话,大多数定制ROM的恢复和电源菜单都会包括这一点

传递给reboot的字符串是一个内核参数,只有在设备的内核具有该选项时才有效。你可以在这里尝试一些选择

更新:

安全模式为切换,位于Android系统服务器软件包服务的PackageManager服务内:

public void enterSafeMode() {
    enforceSystemOrRoot("Only the system can request entering safe mode");

    if (!mSystemReady) {
        mSafeMode = true;
    }
}
以下是从任何应用程序使用它的一些要点:

执行此代码的进程必须是System或具有根前缀 这是一项内部服务,禁止使用任何外部代码。不过,有些系统类确实获得了此服务的实现存根IPackageManager。 只有当系统尚未准备就绪时,模式更改才有用。 让我们假设您的应用程序确实打开了安全模式,但由于启用了安全模式,它不会关闭。除非它是一个内置在ROM中的系统应用程序。
第三种进入安全模式的方法在姜饼2.3.5之后提供


设备完全通电后,按电源按钮,然后长按电源关闭菜单项。一个选项显示为进入安全模式。因此,现在可能有一种方法可以编程进入安全模式。当然希望如此,以帮助排除故障。我正在回忆一篇lifehacker文章,该文章引用了另一个来源。

Hmmm。似乎没有希望,但我正在尝试探索果冻豆的来源。
public void enterSafeMode() {
    enforceSystemOrRoot("Only the system can request entering safe mode");

    if (!mSystemReady) {
        mSafeMode = true;
    }
}