1

有时我得到 Exception.java.io.FileNotFoundException, file open failed: EROFS (Read-only file System)。我的清单中有 WRITE_EXTERNAL_STORAGE 权限,偶尔当我运行我的服务时,我会遇到这些异常,并且很少有操作不会成功,但如果我重新启动设备,它就可以正常工作。我想捕获“Exception.java.io.FileNotFoundException”异常并以编程方式重新启动我的设备。我的设备已植根,因此我以编程方式执行“su -c reboot”。

我需要知道如何捕捉“文件打开失败:EROFS”异常并触发重启??

4

1 回答 1

0

将解决您的问题:

    try{
        do whatever
    }catch(FileNotFoundException ex){
        if("EROFS ( Read- only file System)".equals(ex.getMessage())){
           call code for reboot 
        }
    }

您可以替换错误消息甚至跳过它

编辑: - 基于评论

    try{
        do whatever
    }catch(IOException ex){
        if((ex instanceof FileNotFoundException) &&  "EROFS ( Read- only file System)".equals(ex.getMessage())){
           call code for reboot 
        }
    }
于 2013-08-24T13:45:50.380 回答