android 连接服务器的方法及安全性问题
16lz
2021-01-23
(一)Android网络通信的六种方式示例代码
有篇网文很不错:http://www.apkbus.com/android-13316-1-1.html,
在Android中几种网络编程的方式:
(1)针对TCP/IP的Socket、ServerSocket
(2)针对UDP的DatagramSocket、DatagramPackage。这里需要注意的是,考虑到Android设备通常是手持终端,IP都是随着上网进行分配的。不是固定的。因此开发也是有一点与普通互联网应用有所差异的。
(3)针对直接URL的HttpURLConnection
(4)Google集成了Apache HTTP客户端,可使用HTTP进行网络编程。针对HTTP,Google集成了Appache Http core和httpclient 4版本,因此特别注意Android不支持httpclient 3.x系列,而且目前并不支持Multipart(MIME),需要自行添加httpmime.jar
(5)使用Web Service。Android可以通过开源包如jackson去支持Xmlrpc和Jsonrpc,另外也可以用Ksoap2去实现Webservice
(6) 直接使用WebView视图组件显示网页。基于WebView 进行开发,Google已经提供了一个基于chrome-lite的Web浏览器,直接就可以进行上网浏览网页。
尽管有多种连接服务器的方式,但受制于具体的应用场景,其实选择的方法并不多,比较常用的方法是第4种,和网页开发基本相同。
(二)榜样
榜样的力量是无穷的,在此分析一下淘宝客户端的连接方式,或许猜测的并不正确。
login(this.userName, this.password, PhoneInfo.getImei(this), PhoneInfo.getImsi(this), this.checkCode, this.checkCodeId);
...new ConnectorHelper(pubKey, userName, password, imei, imsi, nextTime, checkCode, checkCodeId,token, appkey, appsecret);...
url 中的参数:api:com.taobao.client.sys.login,t:nextTime,v:v2,username,password:RSAUtil.encrypt(password),token,checkCode,checkCodeId,appKey,topToken:(byte2hex(MD5(getBytes("gbk")))=>(appkey+appsecret+userName+nextTime),apiBaseUrl,ttid,imei,imsi,device_id,appSecret,sign
更多相关文章
- 【Android应用开发】-(19)Android 串口编程原理和实现方式
- Android中工作线程与主线程同步方式
- Android访问WCF(下篇)-客户端开发
- Android 使用HTTP(get和post)方式登陆服务器
- Android客户端上传文件到服务器端
- 简单的通过request判断客户端设备类型
- android 创建 删除桌面快捷方式