Android:简单联网获取网页代码
16lz
2021-12-04
设置权限,在AndroidManifest.xml加入
<uses-permission android:name="android.permission.INTERNET"/>
public class MainActivity extends Activity { private EditText address; private Button getbutton; private TextView text; @Override protected void onCreate(Bundle savedInstanceState) { //版本4.0后需加这个,不然就报错android.os.NetworkOnMainThreadException StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() .detectDiskReads().detectDiskWrites().detectNetwork() .penaltyLog().build()); StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder() .detectLeakedSqlLiteObjects().detectLeakedClosableObjects() .penaltyLog().penaltyDeath().build()); // super.onCreate(savedInstanceState); setContentView(R.layout.test); //初始化 address = (EditText) findViewById(R.id.address); getbutton = (Button) findViewById(R.id.getbutton); text = (TextView) findViewById(R.id.text); getbutton.setOnClickListener(new Button.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub String url = address.getText().toString(); getPDAServerData(url); } }); } public void getPDAServerData(String url) { HttpClient client = new DefaultHttpClient(); HttpPost request; try { request = new HttpPost(url); //调用HttpClient对象的execute(HttpUriRequest request)发送请求,返回一个HttpResponse HttpResponse response = client.execute(request); //返回响应码为200 if (response.getStatusLine().getStatusCode() == 200) { //从响应中获取消息实体 HttpEntity entity = response.getEntity(); if (entity != null) { String out = EntityUtils.toString(entity); text.setText(out); } } } catch (ClientProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}
实例下载>>>>>>>>>
更多相关文章
- Android(安卓)Activity从创建到显示流程
- 全面解析Android事件分发机制:一篇足矣!
- 对于android触摸事件模型的一些理解
- android 返回键与finish区别 onBackPressed
- 13、Android重写系统返回键
- Android通过HttpURLConnection上传多个文件至服务器 - 流传输
- Android(安卓)Studio 第五十期 - 自定义TabLayout
- 屏蔽应用报错弹框和无响应弹框
- android双击返回键退出程序