楼主这样写:
            //获得root权限
            String command = "chmod -R 777 /dev";
            try {
              Process process = Runtime.getRuntime().exec(new String[] {"su", "-c", command});
              process.waitFor();
             } catch(IOException e) {
              e.printStackTrace();
             } catch (InterruptedException e) {
              e.printStackTrace();
             }
            
其实只要加入-R就可以,这个表示/dev下的都改变权限,加入异常更严谨,我在工程中用过,保证没问题,但是,必须强调的是,这个修改是一次性的,比如说你插上U盘,执行这段代码,就改变权限了,但是再拔了,再插,这个时候dev/bus/usb下的文件就没有root权限了,请楼主注意

解决方案 »

  1.   

    现在是能读取设备了,可新的问题又出现了,我用读文件的方式读设备:
    String fileName = "/dev/usb/input1-1.2";
    String res="";     
    FileInputStream fin;
    fin = new FileInputStream(fileName);
    int length = fin.available(); 
    byte[] buffer = new byte[length]; 
    fin.read(buffer);
    fin.close();  
    tv.setText(res);
    但是一直是IOException....应该怎么解决?
      

  2.   

    这个我就不清楚了,楼主看看日志,如果异常是我给你的那部分代码造成的话,就说明我的方法有问题,但是我用了很多次了,本人是搞usb的,从来没异常过
      

  3.   

    可以的,我尝试过这种过程,应该没有问题的!!尝试着获取ROOT权限吧!!
      

  4.   

    我想读的设备是摇杆,尝试过jni读数据,和java直接读文件,手机也是root过的,把dev的权限也设置为777,在adb下不用root就能cat出数据,但就是读不出来数据。。都要被折腾疯了
      

  5.   

    现在我插上摇杆,dev/input和dev/usb下都能读到设备,应该是读哪一个?
      

  6.   

    建议楼主用eclipse的DDMS看看你的摇杆文件到底在哪个目录下,那个能显示出来
      

  7.   

    Mike_IoT,
    你IOException问题如何解决的?能否共享下?
      

  8.   

    楼主,我现在想读取/dev下面的设备文件,收集手指在屏幕上滑动时的原始数据,请问该怎么做呢?求指点