概述
我正在尝试将USB海量存储设备安装到我的Raspberry Pi运行Android的东西。我遇到了this答案,它显示了如何使用命令行ADB shell进行挂载。 但问题是我必须在每次启动设备时运行这些命令。我想在我的启动活动的onCreate()中安装USB驱动器。下面是代码:启动活动时将USB U盘安装到android的东西
//Here is the mount drive function which I called in onCreate of my activity.
private void mountDrive() throws IOException, InterruptedException {
Process mProcess = Runtime.getRuntime().exec("/system/xbin/su");
BufferedReader reader = new BufferedReader(new InputStreamReader(mProcess.getInputStream()));
DataOutputStream dos = new DataOutputStream(mProcess.getOutputStream());
dos.writeBytes("mkdir /mnt/usbn");
dos.flush();
dos.writeBytes("mount -t vfat -o rw /dev/block/sda1 /mnt/usbn");
dos.flush();
dos.writeBytes("exitn");
//Read the response
String line, result = "";
while ((line = reader.readLine()) != null) {
result += line;
Log.d("CMD","RESULT:"+result);
}
reader.close();
dos.flush();
dos.close();
mProcess.waitFor();
}
但我收到此错误:
I/sh: type=1400 audit(0.0:31): avc: denied { read } for name="/" dev="mmcblk0p6" ino=2 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:rootfs:s0 tclass=dir permissive=1
I/sh: type=1400 audit(0.0:32): avc: denied { open } for path="/" dev="mmcblk0p6" ino=2 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:rootfs:s0 tclass=dir permissive=1
W/System.err: java.io.IOException: Cannot run program "su": error=13, Permission denied
W/System.err: at java.lang.ProcessBuilder.start(ProcessBuilder.java:983)
W/System.err: at java.lang.Runtime.exec(Runtime.java:691)
W/System.err: at java.lang.Runtime.exec(Runtime.java:524)
W/System.err: at java.lang.Runtime.exec(Runtime.java:421)
我如何挂上从我的Android上的物联网应用在使用USB设备?
+1
在Android下,它会自动挂载。所以我想知道为什么这不会发生在Android的东西。 –
最后
以上就是激动柚子为你收集整理的安装android到u盘安装程序,启动活动时将USB U盘安装到android的东西的全部内容,希望文章能够帮你解决安装android到u盘安装程序,启动活动时将USB U盘安装到android的东西所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复