所以我在 java 和 android 中有完全相同的代码,但由于某种原因,在 android 方法中get()
总是无法完成工作并返回 false,但在标准 java 中它工作得很好。而且我确实有清单中的互联网许可。
这是代码:
public boolean get(){
try {
jsonObject = new JSONObject(readUrl(url)); // Ignore JSON thing.
return true;
} catch (Exception ex) {
return false;
}
}
private String readUrl(String urlString) throws Exception {
BufferedReader reader = null;
try {
URL url = new URL(urlString);
reader = new BufferedReader(new InputStreamReader(url.openStream()));
StringBuffer buffer = new StringBuffer();
int read;
char[] chars = new char[1024];
while ((read = reader.read(chars)) != -1) {
buffer.append(chars, 0, read);
}
return buffer.toString();
} finally {
if (reader != null) {
reader.close();
}
}
}