我在Android編程方面很新穎。我試圖連接並獲得鏈接的響應,例如:https://stackoverflow.com/Android HttpResponse - 在模擬器中工作,但不能在設備中工作
我已經使用HttpResponse
獲取響應,然後使用EntityUtils.toString(rp.getEntity())
函數將響應轉換爲字符串。我的代碼在Emulator中完美運行,但是當我嘗試在真實設備(即Samsung Galaxy Tab 7.0)中運行該項目時,它不運行並且說「不幸,...已停止」。
任何人都可以讓我知道爲什麼會發生這種情況,解決方案是什麼?代碼如下:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView txt = (TextView) findViewById(R.id.textView1);
String pageStr = "***";
try
{
HttpClient hc = new DefaultHttpClient();
HttpPost post = new HttpPost("https://stackoverflow.com/");
HttpResponse rp = hc.execute(post);
if(rp.getStatusLine().getStatusCode() == HttpStatus.SC_OK)
{
pageStr = EntityUtils.toString(rp.getEntity());
}
else
{
Toast.makeText(getApplicationContext(), "Failed!!", Toast.LENGTH_LONG).show();
}
}catch(IOException e){
e.printStackTrace();
}
txt.setText(pageStr);
}
}
我已經使用了下列權限在manifest
文件:
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
有關此問題的任何幫助或建議將不勝感激。
它墜毀。列出完整的崩潰日誌。 – 2013-03-18 18:47:52
以下答案解決了我的問題。 – Mesbahul 2013-03-18 19:33:38