Android中基于HTTP的网络技术
Android中的网络技术是基于HTTP的访问方法,类似QQ,微信,微博等等这些软件,都使用了大量的通信方法,这已经是Android应用必不可少的内容
WebView
这个控件可以在Android应用中替代浏览器来显示网页,具体使用方法如下
获取WebView对象
获取WebSettings对象
启用JavaScript
将页面WebView中
载入网页
publicclassMainActivityextendsAppCompatActivity{@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);WebViewwebView=(WebView)findViewById(R.id.webView);WebSettingsws=webView.getSettings();ws.setJavaScriptEnabled(true);webView.setWebViewClient(newWebViewClient());webView.loadUrl("https://www.sina.com.cn");}}
HttpURLConection
WebView封装了HTTP客户端的所有操作,当需要直接获得服务器响应时,就可以使用HttpURLConection了
调用openConnection方法获得实例对象
设置HTTP请求方式
设置请求相关参数
处理返回结果
HttpURLConnectioncon=null;BufferedReaderreader=null;try{URLurl=newURL("http:www.baidu.com");con=(HttpURLConnection)url.openConnection();con.setRequestMethod("GET");Log.e("doUrlGet:",con.getContentLength()+"");if(true)return;InputStreamin=con.getInputStream();reader=newBufferedReader(newInputStreamReader(in));StringBuilderresult=newStringBuilder();Strings;s=reader.readLine();while(s!=null){result.append(s);s=reader.readLine();}
OkHttp
HttpURLConnection将服务器响应结果封装在InputStream中,需要通过代码将其读取,而OkHttp相比之下就简单许多
获得OkHttpClient对象
通过Request.Builder创建对象
调用execute方法执行请求
获得字符串形式返回结果
OkHttpClientokClient=newOkHttpClient();Request.Builderbuilder=newRequest.Builder();builder.url("http://www.baidu.com");Requestrequest=builder.build();Responseresponse=okClient.newCall(request).execute();Stringresult=response.body().string();
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。