如何制作一个无需root即可重启设备进入恢复状态的应用程序(系统应用程序)

时间:2019-04-29 06:22:34

标签: android

我想制作一个可将设备重新引导至恢复状态的应用程序。首先,我试图创建与单击启动器图标一样简单的应用程序,它将设备重新启动进入恢复状态。我知道它需要REBOOT权限,并且我已经授予了该权限,甚至我也将apk放在了system / priv-app中。但这不起作用...请帮助我。另外,我也不想使用root重启,因为我是由我自己为自定义rom制作此应用,并且我也不希望该应用作为系统应用要求root权限。

这是我的mainActivity.java:

package com.shivam.rebooter;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Context;
import android.os.PowerManager;

import android.os.Bundle;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
        try{
            pm.reboot("recovery");
        }catch(Exception e){
            Toast.makeText(this, "Failed!", Toast.LENGTH_SHORT).show();
        }

    }
}

这是我的AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.shivam.rebooter">
    <uses-permission android:name="android.permission.REBOOT"/>
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

每次运行该应用程序时,我都会在烤面包中得到Failed

0 个答案:

没有答案