使用 Runtime.getRuntime().exec() 时获取 IO 异常



我想在android中使用命令行工具来使用ffmpeg库。但是我在尝试时遇到IO异常,我已经将ffmpeg.exe存储在/files文件夹中。这是代码:

public class MainActivity extends Activity {
    Process p;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Process p = Runtime.getRuntime().exec("/data/data/com.example.ffmpegnew/files/ffmpeg",null, new File("/data/data/com.example.ffmpegnew/files"));
        }
        catch(Exception e)
        {
            System.out.println("exception"+e);
        }
    }
}

这是错误:

09-16 16:24:38.751: I/System.out(2209): exceptionjava.io.IOException: Error running exec(). Commands: [/data/data/com.example.ffmpegnew] Working Directory: /data/data Environment: null

请告诉我问题出在哪里。提前谢谢。

我不认为.exe文件在Linux上运行,更不用说可能是x86编译的二进制可执行文件了。

此外,即使你得到了一个编译的 ffmpeg,你也必须通过 chmod 使其可执行

最新更新