试图修改android设备中的文件/sys/class/power\u supply/battery/capacity时获取EACCES(权限被拒绝)
我需要用我的应用程序更改android设备的电池电量。因此,我尝试修改“/sys/class/power\u supply/battery/”目录中的“capacity”文件。 但当运行代码时,我看到以下错误: java.io.FileNotFoundException:/sys/class/power\u supply/battery/capacity:open failed:EACCES(权限被拒绝) 下面是我试图编辑该文件的代码试图修改android设备中的文件/sys/class/power\u supply/battery/capacity时获取EACCES(权限被拒绝),android,adb,Android,Adb,我需要用我的应用程序更改android设备的电池电量。因此,我尝试修改“/sys/class/power\u supply/battery/”目录中的“capacity”文件。 但当运行代码时,我看到以下错误: java.io.FileNotFoundException:/sys/class/power\u supply/battery/capacity:open failed:EACCES(权限被拒绝) 下面是我试图编辑该文件的代码 Runtime.getRuntime().exec("sh
Runtime.getRuntime().exec("sh /system/xbin/su");
FileWriter fw= new FileWriter(new File("/sys/class/power_supply/battery/capacity"));
fw.write("45");
fw.close();
以下是清单文件:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.test_app.qa">
<application android:allowBackup="true" android:label="@string/app_name"
android:icon="@mipmap/ic_launcher" android:theme="@style/AppTheme">
</application>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.ACCESS_CACHE_FILESYSTEM"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<instrumentation android:name="android.support.test.runner.AndroidJUnitRunner"
android:label="test"
android:targetPackage="com.test_app.module"/>
有人能给我建议修改文件的方法吗?检查您是否请求了更改/读取文件的权限,以及路径是否正确 公共类FileNotFoundException 扩展IOException 表示尝试打开由指定路径名表示的文件失败 当具有指定路径名的文件不存在时,FileInputStream、FileOutputStream和RandomAccessFile构造函数将引发此异常。如果文件确实存在,但由于某些原因无法访问,例如试图打开只读文件进行写入时,这些构造函数也会抛出该文件。)
总是在询问stackoverflow时,发布尽可能多的信息。。。显示类,AndroidManifest,显示Logcat,显示您认为相关的内容。。。我们只能帮助你,如果你表现出你所做的努力,并告诉我们细节…谢谢你的回复。。该文件确实存在于该位置中,但我收到访问被拒绝错误。如何获得修改设备中/sys目录下文件的权限。就像我们在Android清单文件中添加****权限一样,我们可以修改设备的/data目录下的文件。编辑您的问题,发布您的清单。EACCES通常与缺乏权限有关。