如何获得我的Android应用程序的root访问权限?

时间:2015-09-21 06:23:40

标签: android android-permissions android-file

我有一个应用程序,用户可以从相机拍摄并查看它。

对于该功能,我在SD卡中创建一个文件,用于将从摄像机返回的数据存储到创建的文件

每当我创建目录时,我都会收到错误。

com.cyanogenmod.filemanager.console.InsufficientPermissionsException

这是创建目录的代码。

 public static File getOutputMediaFile(int type) {

        File mediaStorageDir = new File(
                Environment
                        .getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES),
                MediaConstants.BASE_DIRECTORY);

        if (!mediaStorageDir.exists()) {
            if (!mediaStorageDir.mkdirs()) {
                //Getting error here
                return null;
            }
        }

      //Code to create file name in the directory
    }

我知道我的应用程序没有足够的权限在外部存储中创建目录。请帮助我授予我的应用程序创建目录的权限

2 个答案:

答案 0 :(得分:2)

您无需root权限即可执行此操作。相反,您只需要适当的文件权限:

 android.permission.READ_EXTERNAL_STORAGE
 android.permission.WRITE_EXTERNAL_STORAGE

您应该在清单中为这些声明添加<uses-permission>声明。此外,对于Android M,您应query these permissions at runtime拨打requestPermissions()checkSelfPermission()。另请参阅:permissionssaving files文档。

答案 1 :(得分:0)

指定android.permission.FACTORY_TEST权限。 docs here

要访问root权限,请使用:

p = Runtime.getRuntime().exec("su");

来源:Here