0

我正在尝试以编程方式关闭我的自定义 android 设备。我正在使用下面的代码来做同样的事情,但它再次重新启动。我希望设备完全关闭。

Intent intent = new Intent("android.intent.action.ACTION_REQUEST_SHUTDOWN");
            intent.putExtra("android.intent.extra.KEY_CONFIRM", false);
            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            startActivity(intent);

如何实现完全关闭,即避免自动重启?

注意:我已经使用平台签名签署了应用程序。将其放在 /system/app<uses-permission android:name="android.permission.SHUTDOWN" />清单中添加了权限。

4

3 回答 3

1

如果您的设备已植根,则可以使用此代码进行关机

Java.Lang.Runtime.GetRuntime().Exec(new String[] { "/system/xbin/su", "-c", "reboot -p" });

并使用此代码重新启动

Java.Lang.Runtime.GetRuntime().Exec(new String[] { "/system/xbin/su", "-c", "reboot now" });

我在 Xamarin.Android 上使用它

于 2017-09-27T18:43:24.780 回答
0
Intent i = new Intent("android.intent.action.ACTION_REQUEST_SHUTDOWN");
i.putExtra("android.intent.extra.KEY_CONFIRM", true);
startActivity(i);
于 2016-07-14T12:59:51.163 回答
0

试试这个代码,它可能会有所帮助。

try {
    Process p = Runtime.getRuntime().exec(new String[]{ "su", "-c", "reboot" });
 p.waitFor();
} catch (Exception ex) {
    ex.printStackTrace();
}
于 2016-07-14T12:50:09.430 回答