我正在运行基于Yahoo Weather API的基本Get Request。这是来自Youtube的例子。我无法让它运行..我在doInBackground方法的HTTP请求中得到运行时错误。 (见下文)。
我在手机上收到错误消息"类型为Java.lang.boolean的值True无法转换为JSON对象"。所以我需要返回一个String。但是当我改变" line"的类型时在String中它给出了错误"不兼容的类型 - 必需的java.lang.String - found Boolean"。所以来自BufferedReader的readline命令需要一个String但是找到一个布尔值。任何人都可以向我解释发生了什么以及如何解决这个问题?
事先感谢!
public void refreshWeather(final String location){
SuperClass
答案 0 :(得分:1)
你的while循环似乎是错误的。 "线"应该是字符串类型,while循环应该是
while ((line = reader.readLine()) != null)
答案 1 :(得分:1)
在java中进行比较时,请使用==
进行检查。在进行比较时不要设置变量,例如:line = reader.readLine()!= null
当您检查变量名称时,如果您尝试设置变量名称,则会导致错误。
在调用之前尝试设置变量,然后使用line != null
例如:
line = reader.readLine();
if(line != null) {
//do something
}