网站建设资讯

NEWS

网站建设资讯

Android中基于HTTP的网络技术-创新互联

Android中的网络技术是基于HTTP的访问方法,类似QQ,微信,微博等等这些软件,都使用了大量的通信方法,这已经是Android应用必不可少的内容

目前创新互联已为上千的企业提供了网站建设、域名、虚拟主机、网站改版维护、企业网站设计、新罗网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

WebView

这个控件可以在Android应用中替代浏览器来显示网页,具体使用方法如下

  • 获取WebView对象

  • 获取WebSettings对象

  • 启用JavaScript

  • 将页面WebView中

  • 载入网页

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        WebView webView= (WebView) findViewById(R.id.webView);
        WebSettings ws=webView.getSettings();
        ws.setJavaScriptEnabled(true);
        webView.setWebViewClient(new WebViewClient());
        webView.loadUrl("https://www.sina.com.cn");
    }
}

HttpURLConection

WebView封装了HTTP客户端的所有操作,当需要直接获得服务器响应时,就可以使用HttpURLConection了

  • 调用openConnection方法获得实例对象

  • 设置HTTP请求方式

  • 设置请求相关参数

  • 处理返回结果

 HttpURLConnection con=null;
        BufferedReader reader=null;
        try {
            URL url=new URL("http:www.baidu.com");
            con=(HttpURLConnection)url.openConnection();
            con.setRequestMethod("GET");
            Log.e("doUrlGet: ",con.getContentLength()+"");
            if(true) return;
            InputStream in=con.getInputStream();
            reader =new BufferedReader(new InputStreamReader(in));
            StringBuilder result=new StringBuilder();
            String s;
            s=reader.readLine();
            while(s!=null){
                result.append(s);
                s=reader.readLine();
            }

OkHttp

 HttpURLConnection将服务器响应结果封装在InputStream中,需要通过代码将其读取,而OkHttp相比之下就简单许多

  • 获得OkHttpClient对象

  • 通过Request.Builder创建对象

  • 调用execute方法执行请求

  • 获得字符串形式返回结果

OkHttpClient okClient=new OkHttpClient();
            Request.Builder builder=new Request.Builder();
            builder.url("http://www.baidu.com");
            Request request=builder.build();
            Response response=okClient.newCall(request).execute();
            String result=response.body().string();

标题名称:Android中基于HTTP的网络技术-创新互联
转载来源:http://cdweb.net/article/dddhoe.html