zoukankan      html  css  js  c++  java
  • Android:简单联网获取网页代码

    设置权限,在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();
            }
    
        }
    
    }

     实例下载>>>>>>>>>

  • 相关阅读:
    关键C函数备录
    TCP/UDP编程步骤和区别
    Pro C/C++环境搭建
    linux常用命令和选项
    运行在linux上的mysql常用命令
    把指针作为形参,用于取值的用法
    Leetcode476.Number Complement数字的补数
    Leetcode463.Island Perimeter岛屿的周长
    Leetcode461Hamming Distance汉明距离
    Leetcode455.Assign Cookies分发饼干
  • 原文地址:https://www.cnblogs.com/tinyphp/p/4022781.html
Copyright © 2011-2022 走看看