我正在尝试将 wget 与我的 Android 应用程序一起使用,该应用程序针对 Android v 4.2.2。我通过 AndroidManifest.xml 文件授予了应用程序 Internet 权限,但这并没有解决问题。我仍然无法使用 wget 命令下载文件。我还尝试使用 java 套接字来完成与服务器的连接并下载文件,但是,这不起作用。似乎 Android 4.2.2 版本对允许通过 Android 应用程序访问网络有限制。有人可以帮我确定一种获得网络访问权限的解决方法,以便 wget 命令可以在 Android 应用程序中运行吗?下面是我用来测试命令的代码。
private String runShellCommand() {
try {
Process process = Runtime.getRuntime().exec("system/bin/wget -O /data/data/com.shell/filename http://url to the file");
InputStreamReader reader = new InputStreamReader(process.getInputStream());
BufferedReader bufferedReader = new BufferedReader(reader);
int numRead;
char[] buffer = new char[5000];
StringBuffer commandOutput = new StringBuffer();
while ((numRead = bufferedReader.read(buffer)) > 0) {
commandOutput.append(buffer, 0, numRead);
}
bufferedReader.close();
process.waitFor();
return commandOutput.toString();
} catch (IOException e) {
throw new RuntimeException(e);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}