安卓开发,HttpResponse httpResponse = httpClient.execute(new HttpGet(url));语句无法执行的问题。 15

急需解决。写安卓程序,功能是从网上读取一个文本文件并打印出来,但是执行到HttpResponsehttpResponse=httpClient.execute(newHt... 急需解决。写安卓程序,功能是从网上读取一个文本文件并打印出来,但是执行到HttpResponse httpResponse = httpClient.execute(new HttpGet(url));就停住了(由打印调试可得到这个结论),请求热心网友帮助!代码如下:
(由于字数限制,导入的包名没有列出,末尾加/////////的为调试语句)
public class MainActivity extends Activity {
private Button geocoding = null;

private Button reverseGeocoding = null;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
geocoding = (Button)findViewById(R.id.geocoding);
geocoding.setOnClickListener(new OnClickListener(){
public void onClick(View arg0) {

new Thread(){
public void run(){
Log.d("yinan", "run");/////////
String url = "http://maps.google.com/maps/api/geocode/json?address=SFO&sensor=false";
String responseData = "" ;
Log.d("yinan", "url");/////////
HttpClient httpClient = new DefaultHttpClient();
Log.d("yinan", "DefaultHttpClient");/////////
try {
Log.d("yinan", "#############");/////////
HttpResponse httpResponse = httpClient.execute(new HttpGet(url));//发送一个GET请求
Log.d("yinan", "httpResponse");/////////
HttpEntity entity = httpResponse.getEntity();
Log.d("yinan", "Entity!!!");/////////
BufferedReader br = new BufferedReader(new InputStreamReader(entity.getContent()));
String str;
Log.d("yinan", "OnClickListener");/////////
while((str = br.readLine()) != null){
Log.d("yinan", str);
}

} catch (ClientProtocolException e) {

e.printStackTrace();
} catch (IOException e) {

e.printStackTrace();
}
}

}.start();

}

});
}
}
展开
 我来答
314659476
2014-12-04 · TA获得超过1836个赞
知道大有可为答主
回答量:2162
采纳率:66%
帮助的人:568万
展开全部
这句话是一个阻塞语句,会等到执行完成了才会继续向下进行,如果访问的URL不能访问,就会停留很久,然后抛出超时异常。

你的代码有问题的,在onclick里面不能直接访问网络,因为这个是在主线程里(UI线程),你要新开一个线程才能访问网络
匿名用户
2014-12-03
展开全部
没申请权限?
在Manifest.xml的根节点下加入
<uses-permission android:name="android.permission.INTERNET"/>
追问
已经加了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友455f0f8
2014-12-03 · TA获得超过142个赞
知道小有建树答主
回答量:174
采纳率:0%
帮助的人:97.7万
展开全部
看logcat 打印的信息啊,再定位自己的错误
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式