【发布时间】:2013-01-11 19:18:44
【问题描述】:
我正在尝试访问显示我的 android 应用程序内容的 json。 FileNotFound 异常在 Android 4.0.4 中抛出,但 json 可以在 Android 2.3.3 中访问。也可以使用相同的 url 从浏览器访问 json。代码有什么问题?任何人都可以帮助我解决这个问题。
我正在使用下面的代码:
url = new URL("http://www.dynamiskdesign.se/ipromotionnew/json/148.json");
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setRequestMethod("GET");
httpURLConnection.setDoOutput(true);
httpURLConnection.connect();
InputStream input = httpURLConnection.getInputStream();
if (input != null) {
writer = new StringWriter();
char[] buffer = new char[1024];
Reader reader = new BufferedReader(new InputStreamReader(input, "UTF-8"));
int n;
while ((n = reader.read(buffer)) != -1) {
writer.write(buffer, 0, n);
}
input.close();
}
String jsontext = writer.toString();
【问题讨论】:
-
在哪一行抛出异常? logcat 中有更多信息吗?
-
@RvdK 这里不需要 Logcat。这是因为:此错误来自 HoneyComb(3.0 或更高版本)。如文档所述,您无法在其主线程上执行网络操作。要解决这个问题,您必须使用处理程序或异步任务。