1
我写了一个简单的方法来使用apache HTTPClient获取一些字符串数据,但是当我在手机上运行时它返回一个空白屏幕;我试图在textarea中显示数据。该清单具有互联网许可。任何人都可以指出我可能做错了什么?Android应用返回空白屏幕的HTTP客户端
public String getInternetData() throws Exception
{
BufferedReader in = null;
String data = null;
try
{
HttpClient client = new DefaultHttpClient();
URI website = new URI("http://www.yahoo.com");
HttpGet request = new HttpGet();
request.setURI(website);
HttpResponse response = client.execute(request);
in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
StringBuffer sb = new StringBuffer("");
String l = "";
String nl = System.getProperty("line.separator");
while((l=in.readLine())!=null){
sb.append(l+nl);
}
in.close();
data = sb.toString();
return data;
}finally{
if(in !=null){
try{
in.close();
return data;
}catch (Exception e){
e.printStackTrace();
}
}
}
}
的完整性,我将用我看到数据的代码。
public class MainActivity extends Activity {
TextView httpStuff;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
httpStuff = (TextView) findViewById(R.id.tvHttp);
GetMethodEx test = new GetMethodEx();
String returned;
try {
returned = test.getInternetData();
httpStuff.setText(returned);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
你知道一个HttpClient只是一种通过Http下载的方式,对吗?我想你正在寻找一个WebView – Codeman
向我们展示显示数据的代码。 – wyoskibum
是的。我相信我明白了目的。我已经可以很好地使用网页浏览了。但是,这不是我在这里寻找的。我想当这个方法运行时,我的方法中的数据字符串不应该是空的,我应该看到一些文本。但我不知道,所以我想知道我做错了什么。 – Ammar