http通信。以xml或者json为载体。相互通信数据。

Android对于http的网络通信,提供了标准的java接口——httpURLConnection接口。以及apache的接口——httpclient接口。当中我自己用的比較多的而是httpclient这个接口,由于它的功能更为丰富非常有效。

同一时候http通信也分为post方式和get的方式,两个相比較的话。post传送的数据量比較大,安全性也比較高。因此在做数据查询时。我会用get方式。而在做数据加入、改动或删除时,我就用Post方式
下面是基于httpclient接口,用get和post的方式通信的代码。
(get方式)

protected void onCreate(Bundle savedInstanceState) {

       super.onCreate(savedInstanceState);

       setContentView(R.layout.login);

       TextView text = (TextView) this.findViewById(R.id.text_http);

       String httpurl = “http://10.0.2.2:8080/SIM_SERVER/org/Org-list”;

       //①httpget连接对象

       HttpGet httpRequest = new HttpGet(httpurl);

       //②取得httpclient的对象

       HttpClient httpclient = new DefaultHttpClient();

       try {

         //③请求httpclient,取得httpResponse

           HttpResponse httpResponse = httpclient.execute(httpRequest);

    //④推断请求是否成功     if(httpResponse.getStatusLine().getStatusCode()==HttpStatus.SC_OK){             //⑤取得返回的字符串

              String strResult = EntityUtils.toString(httpResponse.getEntity());

              text.setText(strResult);

           }else{

              text.setText(“请求失败”);

           }

       } catch (ClientProtocolException e) {

           e.printStackTrace();

       } catch (IOException e) {

           e.printStackTrace();

       }

    }

(post方式)

protected void onCreate(Bundle savedInstanceState) {

       super.onCreate(savedInstanceState);

       this.setContentView(R.layout.login);

       TextView text = (TextView) this.findViewById(R.id.text_http);

       //①http连接地址

       String url = “http://10.0.2.2:8080/SIM_SERVER/and/Android-test”;

        //②取得httppost连接对象

       HttpPost httpPost = new HttpPost(url);

        //③使用NameValuePair来保存要传递的Post參数

       List<NameValuePair> params = new ArrayList<NameValuePair>();

        //④加入要传递的參数

       params.add(new BasicNameValuePair(“parentId”, “0″));

       HttpEntity httpentity;

       try {

            //⑤设置字符集

           httpentity = new UrlEncodedFormEntity(params, “utf-8″);

            //⑥把字符集设置在请求request里面

           httpPost.setEntity(httpentity);

             //⑦取得httpclient

           HttpClient httpClient = new DefaultHttpClient();

             //⑧请求发送,并获得response

           HttpResponse httpResponse = httpClient.execute(httpPost);

//⑨推断请求是否成功     if(httpResponse.getStatusLine().getStatusCode()==HttpStatus.SC_OK){              //⑩取得返回字符串

              String strResult = EntityUtils.toString(httpResponse.getEntity());

              text.setText(strResult);

           }else{

              text.setText(“请求失败”);

           }

       } catch (UnsupportedEncodingException e) {

           e.printStackTrace();

       } catch (ClientProtocolException e) {

           e.printStackTrace();

       } catch (IOException e) {

           e.printStackTrace();

       }

    }

Android与server通信的方法之中的一个(json)效率不高安全性不好的更多相关文章

  1. Android与server通信中的方法(TCP)高效的安全完整

    我以前一直使用sockets实现emulator和PC进行通讯,卡了几天,最后请教其它人最终能够连接了.  错误原因是在IP和port,IP要用本机IP(在CMD输入ipconfig.注意:每次开机本 ...

  2. Android应用经典主界面框架之中的一个:仿QQ (使用Fragment, 附源代码)

    备注:代码已传至https://github.com/yanzi1225627/FragmentProject_QQ 欢迎fork,如今来审视这份代码,非常多地方写的不太好,欢迎大家指正.有时间我会继 ...

  3. android ksoap2调用.net Webservice 方法总结

    android  ksoap2调用.net Webservice 方法直接放到一个类里: package com.util; import org.ksoap2.SoapEnvelope; impor ...

  4. 【IPC进程间通讯之中的一个】邮槽MailSlot

    IPC进程间通信+邮槽MailSlot                IPC(Inter-Process Communication.进程间通信).        现代计算机採用虚拟内存机制,为进程提 ...

  5. 调试 Android* x86 应用程序的方法以及要使用的工具

    作者:Xiaodong Wang 1.简单介绍 众所周知,Android* 开发者头顶很多称呼:设计员.程序员等,而且一般会不可避免地被称为故障检修工. 代码中的错误无法避免.因此不管您是否一開始就造 ...

  6. android的Binder通信机制java层浅谈-android学习之旅(88)

    1.Service Manager的Java代理对象 在Java层中,Service Manager的代理对象类型为ServiceManagerProxy.它继承并且实现了IServiceManage ...

  7. 【朝花夕拾】Android性能篇之(七)Android跨进程通信篇

    前言 只要是面试高级工程师岗位,Android跨进程通信就是最受面试官青睐的知识点之一.Android系统的运行由大量相互独立的进程相互协助来完成的,所以Android进程间通信问题,是做好Andro ...

  8. Android 串口蓝牙通信开发Java版本

    Android串口BLE蓝牙通信Java版 0. 导语 Qt on Android 蓝牙通信开发 我们都知道,在物联网中,BLE蓝牙是通信设备的关键设备.在传统的物联网应用中,无线WIFI.蓝牙和Zi ...

  9. Android之Http通信——1.初识Http协议

    Android之Http通信--1.初识Http协议 引言: 今天是六一儿童节,先在这里给各位超龄儿童说声节日快乐哈~( ╯□╰ ),小猪也象征性地给群里的小朋友们派了红包-嗯,忙碌的五月最终过去了, ...

随机推荐

  1. centos编译ffmpeg x264

    1.安装汇编编译器(一般系统自带吧).假设没有依照以下的命令安装吧 yum install yasm 2.使用最新x264源代码编译(仅仅支持编码)    在x264官网下载最新的代码http://w ...

  2. Android 四大组件学习之BroadcastReceiver四

    本节学习系统中特殊的广播接收者. 我们前面几节不是说了,当广播接受者一旦注冊到系统中,当系统发送的广播和你注冊的广播的action匹配时,系统就会启动广播接收者所在的进程.除非用户手动停止广播接收者所 ...

  3. 小P寻宝记——好基友一起走

    小P寻宝记--好基友一起走 Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描写叙述 话说.上次小P到伊利哇呀国旅行得到了一批宝藏.他是 ...

  4. wpf获取webbroswer的两个方法

    //跳转前的地址 private void WebBrowser_BeforeNavigate2(object pDisp, ref object URL, ref object Flags, ref ...

  5. 高速排序(Java版)

    package com.love.test; import java.util.Scanner; /** * @author huowolf *高速排序实现 *快排是十分优秀的排序算法. *核心:分治 ...

  6. 分享几个可用的rtsp, http測试url

    rtsp://218.204.223.237:554/live/1/0547424F573B085C/gsfp90ef4k0a6iap.sdp rtsp://218.204.223.237:554/l ...

  7. Android系统编译【转】

    本文转载自;http://blog.csdn.net/zirconsdu/article/details/8005415 Android编译系统分析 概要 由于android编译系统的复杂和使用了不熟 ...

  8. 英语发音规则---V字母

    英语发音规则---V字母 一.总结 一句话总结: 1.V发[v]? voice [vɒɪs] n. 声音 love [lʌv] n. 恋爱 leave [liːv] vt. 离开 very ['ver ...

  9. hdoj--1018--Big Number(简单数学)

    Big Number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total ...

  10. 剑指offer——03从尾至头打印列表(Python3)

    思路:相当于数据结构中的链表就地逆置,可以使用头插法来实现. 代码: class Solution:     # 返回从尾部到头部的列表值序列,例如[1,2,3]     def printListF ...